Come eseguire il download di un file da Internet

Diverso tempo fa mi trovai a dover affrontare il problema dell’aggiornamento di un applicazione via internet costituita da una serie di files e visto che non volevo che i miei clienti si scomodassero a scaricare corposi messaggi di posta elettronica (causandogli magari la saturazione della casella) e comunque volevo evitare che il personale potesse fare dei “copia & incolla” sbagliati e fondamentalmente non volevo ritrovarmi ore ed ore al telefono per dire… vai su… copia il file… incollalo in… sposta questo… insomma ci siamo capiti! :)

Per ovviare a quanto previsto ho cercato un po’ in giro su internet una serie di possibili soluzioni e trovandone una l’ho poi adattata alle mie esigenze.

Di seguito c’è un estratto di codice sviluppato con Microsoft Visual Basic 6.0 adattato genericamente a scaricare l’immagine http://www.diegolamonica.info/images/diegolamonica.jpg da questo sito e collocarla nella root del disco rigido.

Private Declare Function URLDownloadToFile Lib "urlmon" Alias _
 "URLDownloadToFileA" (ByVal pCaller As Long, _
 ByVal szURL As String, _
 ByVal szFileName As String, _
 ByVal dwReserved As Long, _
 ByVal lpfnCB As Long) As Long
 Public Function DownloadFile(URL As String, _
 LocalFilename As String) As Boolean

 Dim lngRetVal As Long

 lngRetVal = URLDownloadToFile(0, URL, LocalFilename, 0, 0)

 If lngRetVal = 0 Then DownloadFile = True
 End Function

 Private Sub Form_Load()

 ' Sostituire il primo parametro con il file che si vuole scaricare
 ' ed il secondo argomento con il nome del file locale nel quale vuoi salvarlo.

 ret = DownloadFile("http://diegolamonica.info/images/diegolamonica.jpg", "c:\logo_diego.jpg")
 End Sub