Hallo!
Das folgende Makro funktionier unter Outlook 2003 (Windows XP 32bit) ohne Probleme.
In Outlook 2010 (Windows 7, SP1, 64bit) läuft das Script nicht mehr.
Ich bekomme eine Fehlermeldung, dass die Deklaration angepasst werden muss bzw. auf 64 bit umgeschrieben werden muss.
Kann hier jemand helfen? (Es wird das Wort "Function" in der ersten Zeile markiert)
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
Private Declare Function DeleteUrlCacheEntry Lib "wininet.dll" _
Alias "DeleteUrlCacheEntryA" ( _
ByVal lpszUrlName As String) As Long
Public Function FileDownload(ByVal sURL As String, _
ByVal sLocalFile As String, _
Optional ByVal bClearCache As Boolean = True) As Boolean
Dim lResult As Long
' URL-Cache leeren?
If bClearCache Then
lResult = DeleteUrlCacheEntry(sURL)
End If
' Download ausführen
lResult = URLDownloadToFile(0, sURL, sLocalFile, 0, 0)
FileDownload = (lResult = 0)
End Function
Private Sub Application_Startup()
Dim sURL As String
Dim sLocalFile As String
' URL-Link der Datei, die heruntergeladen werden soll
sURL = "http://www.domain.de/email/aktion.jpg"
' Dateiname auf dem lokalen System
sLocalFile = "C:\email\aktion.jpg"
' Download starten und autom. URL-Cache leeren
If FileDownload(sURL, sLocalFile) Then
' MsgBox "Download erfolgreich beendet!"
Else
MsgBox "Fehler beim Download: " & _
"Entweder existiert die URL nicht, oder Sie haben " & _
"einen ungültigen Dateinamen angegeben!", vbCritical
End If
End Sub
|