Mit folgender Funktion lassen sich Dateien aus dem Internet herunterladen:
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
Sub Main()
Dim sLocalFile As String
' URL-Link der Datei, die heruntergeladen werden soll
sURL = "http://www.tools4vb.de/download/sevTrayIcon.jpg"
' Dateiname auf dem lokalen System
sLocalFile = "C:\Eigene Dateien\sevTrayIcon.jpg"
' Download ausführen
lResult = URLDownloadToFile(0, sURL, sLocalFile, 0, 0)
' Rückgabewert auswerten
If lResult = 0 Then
MsgBox "Download erfolgreich ausgeführt!"
Else
MsgBox "Fehler beim Download: " & _
"Entweder existiert die URL nicht, oder Sie haben " & _
"einen ungültigen Dateinamen angegeben!", vbCritical
End If
End Sub
Um zu vermeiden, dass beim Download aufgrund des Caches eine alte Version der Datei heruntergeladen wird, kann man diese Funktion nutzen:
Private Function GetRandomNum(Min As Long, Max As Long) As Long
Randomize
GetRandomNum = Int(Rnd * (Max - Min + 1) + Min)
End Function
Mit der Funktion können wir die URL “anders aussehen lassen” sodass immer die aktuellste Datei heruntergeladen wird:
r = GetRandomNum(1, 10000)
sURL = "http://www.tools4vb.de/download/sevTrayIcon.zip" & "&r=" & r