Accueil > > > TELECHARGER UN FICHIER SANS OCX
TELECHARGER UN FICHIER SANS OCX
Information sur la source
Description
Et voilà comment télécharger un fichier sans utiliser d'OCX. Copiez ça dans un module.
Source
- ' ...............................................
- ' ..: Télécharger un fichier sans OCX :..
- ' ..: E-mail : raptor@mailfrance.com :..
- ' ..: URL : www.raptor.fr.fm :..
- ' ...............................................
-
- Option Explicit
-
- Public Declare Function InternetOpen Lib "wininet.dll" Alias "InternetOpenA" (ByVal sAgent As String, ByVal lAccessType As Long, ByVal sProxyName As String, ByVal sProxyBypass As String, ByVal lFlags As Long) As Long
- Public Declare Function InternetOpenUrl Lib "wininet.dll" Alias "InternetOpenUrlA" (ByVal hOpen As Long, ByVal sUrl As String, ByVal sHeaders As String, ByVal lLength As Long, ByVal lFlags As Long, ByVal lContext As Long) As Long
- Public Declare Function InternetReadFile Lib "wininet.dll" (ByVal hFile As Long, ByVal sBuffer As String, ByVal lNumBytesToRead As Long, lNumberOfBytesRead As Long) As Integer
- Public Declare Function InternetCloseHandle Lib "wininet.dll" (ByVal hInet As Long) As Integer
-
- Public Const INTERNET_OPEN_TYPE_PRECONFIG = 0
- Public Const INTERNET_OPEN_TYPE_DIRECT = 1
- Public Const INTERNET_OPEN_TYPE_PROXY = 3
-
- Public Const scUserAgent = "VB OpenUrl"
- Public Const INTERNET_FLAG_RELOAD = &H80000000
-
- Sub Download(URL As String, SaveAs As String)
-
- Dim hOpen As Long
- Dim hOpenUrl As Long
- Dim bDoLoop As Boolean
- Dim bRet As Boolean
- Dim sReadBuffer As String * 2048
- Dim lNumberOfBytesRead As Long
- Dim sBuffer As String
-
- hOpen = InternetOpen(scUserAgent, INTERNET_OPEN_TYPE_PRECONFIG, vbNullString, vbNullString, 0)
- hOpenUrl = InternetOpenUrl(hOpen, URL, vbNullString, 0, INTERNET_FLAG_RELOAD, 0)
-
- bDoLoop = True
- While bDoLoop
- sReadBuffer = vbNullString
- bRet = InternetReadFile(hOpenUrl, sReadBuffer, Len(sReadBuffer), lNumberOfBytesRead)
- sBuffer = sBuffer & Left$(sReadBuffer, lNumberOfBytesRead)
- If Not CBool(lNumberOfBytesRead) Then bDoLoop = False
- Wend
-
- Open SaveAs For Binary Access Write As #1
- Put #1, , sBuffer
- Close #1
-
- If hOpenUrl <> 0 Then InternetCloseHandle (hOpenUrl)
- If hOpen <> 0 Then InternetCloseHandle (hOpen)
-
- End Sub
-
' ...............................................
' ..: Télécharger un fichier sans OCX :..
' ..: E-mail : raptor@mailfrance.com :..
' ..: URL : www.raptor.fr.fm :..
' ...............................................
Option Explicit
Public Declare Function InternetOpen Lib "wininet.dll" Alias "InternetOpenA" (ByVal sAgent As String, ByVal lAccessType As Long, ByVal sProxyName As String, ByVal sProxyBypass As String, ByVal lFlags As Long) As Long
Public Declare Function InternetOpenUrl Lib "wininet.dll" Alias "InternetOpenUrlA" (ByVal hOpen As Long, ByVal sUrl As String, ByVal sHeaders As String, ByVal lLength As Long, ByVal lFlags As Long, ByVal lContext As Long) As Long
Public Declare Function InternetReadFile Lib "wininet.dll" (ByVal hFile As Long, ByVal sBuffer As String, ByVal lNumBytesToRead As Long, lNumberOfBytesRead As Long) As Integer
Public Declare Function InternetCloseHandle Lib "wininet.dll" (ByVal hInet As Long) As Integer
Public Const INTERNET_OPEN_TYPE_PRECONFIG = 0
Public Const INTERNET_OPEN_TYPE_DIRECT = 1
Public Const INTERNET_OPEN_TYPE_PROXY = 3
Public Const scUserAgent = "VB OpenUrl"
Public Const INTERNET_FLAG_RELOAD = &H80000000
Sub Download(URL As String, SaveAs As String)
Dim hOpen As Long
Dim hOpenUrl As Long
Dim bDoLoop As Boolean
Dim bRet As Boolean
Dim sReadBuffer As String * 2048
Dim lNumberOfBytesRead As Long
Dim sBuffer As String
hOpen = InternetOpen(scUserAgent, INTERNET_OPEN_TYPE_PRECONFIG, vbNullString, vbNullString, 0)
hOpenUrl = InternetOpenUrl(hOpen, URL, vbNullString, 0, INTERNET_FLAG_RELOAD, 0)
bDoLoop = True
While bDoLoop
sReadBuffer = vbNullString
bRet = InternetReadFile(hOpenUrl, sReadBuffer, Len(sReadBuffer), lNumberOfBytesRead)
sBuffer = sBuffer & Left$(sReadBuffer, lNumberOfBytesRead)
If Not CBool(lNumberOfBytesRead) Then bDoLoop = False
Wend
Open SaveAs For Binary Access Write As #1
Put #1, , sBuffer
Close #1
If hOpenUrl <> 0 Then InternetCloseHandle (hOpenUrl)
If hOpen <> 0 Then InternetCloseHandle (hOpen)
End Sub
Conclusion
Exemple : Call Download("http://www.url.com/fichier.zip", "C:\Fichier.zip")
Sources du même auteur
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
téléchargement + plantage [ par Claiyah ]
bonjourS.V.P j'ai une fonction qui sert à télécharger un fichier à partir d'un site, le fichier à télécharger est un peut volumineux,le téléchargement
[CS]Fichier Zip impossible à télécharger [ par RCJ ]
Depuis septembre 2009, il m'est impossible de télécharger les fichiers .zip : quand je clique sur "Cliquez ici pour télécharger le zip", j'obtiens un
Choisir ce qu'on veux télécharger avec DownloadFile [ par gaedu42 ]
Bonjour, j'aimerai savoir s'il est possible de choisir les fichier que l'on souhaite télécharger avec la propriété DownloadFile. Un espèce de filtre e
Télécharger [ par Melissa2011 ]
Bonjour, j'ai petit souci, j'essaye de créer un script pour pouvoir télécharger des fichiers vidéos stockés sur un autre serveur j'ai crée mon formul
systeme de mise a jour [ par kenitecfab ]
bonsoirj'aimerai concevoir un systeme de mise à jour (comme le windows update sous xp)language utilisé : vb6voila en faite , j'aimerai que le systeme
Télécharger un fichier et le mettre dans Users [ par SOLDATxRyan ]
Bonsoir, cela fait 2 semaine que je cherche comment télécharger un fichier et le mettre dans le répertoire "C:\Users\***\Desktop\" "***" Etant le nom
Télécharger un fichier depuis un serveur FTP [ par ThomasIsComingBack ]
Bonjour, J'aimerais savoir comment je pourrais faire pour télécharger un fichier sur mon serveur FTP (avec Login et Mot De Passe). Pour l'instant j'ai
télécharger un fichier depuis mon prog VB [ par abdelkha ]
Bonjour,puis-je savoir comment je peux télécharger des fichiers d'un site internet depuis mon programme VB ?Merci d'avance.abdelkha@altavista.com
|
Derniers Blogs
GESTION D'EXCEPTION AVEC LES TASKSGESTION D'EXCEPTION AVEC LES TASKS par richardc
Nous avons vu dans un précédent article comment utiliser Task pour effectuer des opérations dans un autre thread.
Malheureusement, comme tout le monde n'est pas parfait, il se peut que cette exécution se passe mal et qu'une exception se produise.
La...
Cliquez pour lire la suite de l'article par richardc DéMARRONS AVEC LES TASKSDéMARRONS AVEC LES TASKS par richardc
Que vous le vouliez ou non, le développement multi-tâche est maintenant une obligation pour toute nouvelle application. Il est donc vital d'en comprendre les mécanismes et de s'y mettre le plus tôt possible.
En attendant le .NET Framework 4.5 avec le...
Cliquez pour lire la suite de l'article par richardc SLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPSSLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPS par Vko
Retrouvez les slides et les démo de ma session Fast & Furious XAML Apps. A ceux qui se posent la question : "est-ce que le code de la DataGrid est disponible?", je vous répondrais "pas encore". Je vais mettre en place un projet codeplex pour part...
Cliquez pour lire la suite de l'article par Vko XNA IS DEAD!XNA IS DEAD! par richardc
Depuis la semaine dernière (et grâce aux TechDays 2012), je me penche activement sur la nouvelle version de Windows, aka Windows 8. Vous me direz, il était temps puisque la première preview date de Septembre dernier.
OK. Remarquez, on n'en est qu'aux...
Cliquez pour lire la suite de l'article par richardc TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 !TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 ! par ROMELARD Fabrice
Speakers: Fabrice Meillon et Stanislas Quastana Cette session est basée entièrement sur celle donnée lors de la BUILD cet hiver. Il n'y a pas d'ajout d'information en rapport avec cet évènement passé. Windows 8 Server sera intégralem...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|