32338
11.07.2006, aktualisiert um 10:04:26 Uhr
8450
2
0
E-Mails in *.msg Format vollautomaitsch aus Outlook 2003 in Ordner exportierern
hallo,
ich suche ein Tool oder Plugin, mit dem ich E-Mails aus Outlook 2003 vollautomatisch (z.b. über einen geplanten Task) im *.msg Format in einen Ordner exportieren oder kopieren kann.
Die Mail muss am Ende im *.msg Format vorliegen, da diese dann von einem anderen Programm weiterverarbeitet wird.
ich suche ein Tool oder Plugin, mit dem ich E-Mails aus Outlook 2003 vollautomatisch (z.b. über einen geplanten Task) im *.msg Format in einen Ordner exportieren oder kopieren kann.
Die Mail muss am Ende im *.msg Format vorliegen, da diese dann von einem anderen Programm weiterverarbeitet wird.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-Key: 35772
Url: https://administrator.de/contentid/35772
Ausgedruckt am: 29.03.2024 um 06:03 Uhr
2 Kommentare
Neuester Kommentar
Hallo maxpayne3110,
hier ein kleines Codesnippet wie ich das mache, allerdings für einen anderen Zweck deswegen exports und imports.
Die Varialblen usw. müssen natürlich noch deklariert werden.
' 1. Öffnen Mailfolder und BackupMailfolder
'------ COM Objekt Outlook erzeugen
set outlApp = WScript.CreateObject("Outlook.Application")
if Err.Number <> 0 then
return_value = 30
logwrite "Fehler bei CreateObject(Outlook.Application" & " --- " & Err.Description & " / " & CStr(Err.Number), 1
Exit Sub
end if
'------ Outlook Namespace setzen
set nmSpace = outlApp.GetNameSpace("MAPI")
if Err.Number <> 0 then
return_value = 31
logwrite "Fehler bei GetNameSpace(MAPI" & " --- " & Err.Description & " / " & CStr(Err.Number), 1
Exit Sub
end if
'------ Postfach oeffnen
if InStr(postfach, "BUBU") > 0 then
set pf = nmSpace.Folders("Postfach - BUBU")
else
set pf = nmSpace.Folders(postfach)
end if
if Err.Number <> 0 then
return_value = 32
logwrite "Fehler bei nmSpace.Folders" & " --- " & Err.Description & " / " & CStr(Err.Number), 1
Exit Sub
end if
'------ Mailfolder oeffnen
set fld = pf.Folders(mailfolder)
if Err.Number <> 0 then
return_value = 33
logwrite "Fehler bei Folders" & " --- " & Err.Description & " / " & CStr(Err.Number), 1
Exit Sub
end if
'------ Backup Mailfolder oeffnen
set fldbck = pf.Folders(backupmailfolder)
if Err.Number <> 0 then
return_value = 33
logwrite "Fehler bei Folders" & " --- " & Err.Description & " / " & CStr(Err.Number), 1
Exit Sub
end if
set mItems = fld.Items
cnt = mItems.Count
logwrite "Count der Mails: " & CStr(cnt), 0
'------ Schleife ueber die Emails des Mailfolders
for x = cnt to 1 step -1
'------ check, ob die Emails Attachments besitzt
set mAtts = mItems.item(x).Attachments
if Err.Number <> 0 then
return_value = 35
logwrite "Fehler bei mItems.item..Attachments" & " --- " & Err.Description & " / " & CStr(Err.Number), 1
Exit Sub
end if
cntAtt = mAtts.Count
logwrite "Mailname: " & mItems.item(x).subject & " -- Count der Attachments: " & CStr(cntAtt), 0
'------ Besitzt die Email keine Attachments, dann wird die Mail als Textdatei in textdir gespeichert
if cntAtt = 0 then
mItems.item(x).SaveAs textdir & "att_" & CStr(x) & ".txt", 0
if Err.Number <> 0 then
return_value = 36
logwrite "Fehler bei Mail SaveAs" & " --- " & Err.Description & " / " & CStr(Err.Number), 1
Exit Sub
end if
else
'------ Besitzt die Email Attachments, dann werden die Attachments als MSG-Dateien in logdir gespeichert
'------ diese Emails werden wieder als MSG importiert und danach als Textdateien wieder in textdir gespeichert
'------ (man kann Attachments nicht aus einer Email in einen Postfach-Ordner kopieren)
for y = cntAtt to 1 step -1
'-------------- speichern der Attachments als MSG-Dateien
mailfile = logdir & "att_" & CStr(x) & "-" & CStr(y) & ".msg"
mAtts.item(y).SaveAsFile mailfile
if Err.Number <> 0 then
return_value = 37
logwrite "Fehler bei Att SaveAs" & " --- " & Err.Description & " / " & CStr(Err.Number), 1
Exit Sub
end if
'-------------- Importieren der gespeicherten Attachments ins Postfach
set newItem = outlApp.CreateItemFromTemplate(mailfile)
if Err.Number <> 0 then
return_value = 38
logwrite "Fehler bei CreateItemFromTemplate" & " --- " & Err.Description & " / " & CStr(Err.Number), 1
Exit Sub
end if
newItem.Save
if Err.Number <> 0 then
return_value = 39
logwrite "Fehler bei Save Mailitem" & " --- " & Err.Description & " / " & CStr(Err.Number), 1
Exit Sub
end if
'-------------- Speichern der Mails (Attachments) als Textdatei
newItem.SaveAs textdir & "att_" & CStr(x) & "-" & CStr(y) & ".txt", 0
if Err.Number <> 0 then
return_value = 40
logwrite "Fehler bei SaveAs Mailitem" & " --- " & Err.Description & " / " & CStr(Err.Number), 1
Exit Sub
end if
'-------------- Loeschen der Mails (Attachments)
newItem.Delete
if Err.Number <> 0 then
return_value = 41
logwrite "Fehler bei Delete Mailitem" & " --- " & Err.Description & " / " & CStr(Err.Number), 1
Exit Sub
end if
next
end if
next
Gruß
Egbert
hier ein kleines Codesnippet wie ich das mache, allerdings für einen anderen Zweck deswegen exports und imports.
Die Varialblen usw. müssen natürlich noch deklariert werden.
' 1. Öffnen Mailfolder und BackupMailfolder
'------ COM Objekt Outlook erzeugen
set outlApp = WScript.CreateObject("Outlook.Application")
if Err.Number <> 0 then
return_value = 30
logwrite "Fehler bei CreateObject(Outlook.Application" & " --- " & Err.Description & " / " & CStr(Err.Number), 1
Exit Sub
end if
'------ Outlook Namespace setzen
set nmSpace = outlApp.GetNameSpace("MAPI")
if Err.Number <> 0 then
return_value = 31
logwrite "Fehler bei GetNameSpace(MAPI" & " --- " & Err.Description & " / " & CStr(Err.Number), 1
Exit Sub
end if
'------ Postfach oeffnen
if InStr(postfach, "BUBU") > 0 then
set pf = nmSpace.Folders("Postfach - BUBU")
else
set pf = nmSpace.Folders(postfach)
end if
if Err.Number <> 0 then
return_value = 32
logwrite "Fehler bei nmSpace.Folders" & " --- " & Err.Description & " / " & CStr(Err.Number), 1
Exit Sub
end if
'------ Mailfolder oeffnen
set fld = pf.Folders(mailfolder)
if Err.Number <> 0 then
return_value = 33
logwrite "Fehler bei Folders" & " --- " & Err.Description & " / " & CStr(Err.Number), 1
Exit Sub
end if
'------ Backup Mailfolder oeffnen
set fldbck = pf.Folders(backupmailfolder)
if Err.Number <> 0 then
return_value = 33
logwrite "Fehler bei Folders" & " --- " & Err.Description & " / " & CStr(Err.Number), 1
Exit Sub
end if
set mItems = fld.Items
cnt = mItems.Count
logwrite "Count der Mails: " & CStr(cnt), 0
'------ Schleife ueber die Emails des Mailfolders
for x = cnt to 1 step -1
'------ check, ob die Emails Attachments besitzt
set mAtts = mItems.item(x).Attachments
if Err.Number <> 0 then
return_value = 35
logwrite "Fehler bei mItems.item..Attachments" & " --- " & Err.Description & " / " & CStr(Err.Number), 1
Exit Sub
end if
cntAtt = mAtts.Count
logwrite "Mailname: " & mItems.item(x).subject & " -- Count der Attachments: " & CStr(cntAtt), 0
'------ Besitzt die Email keine Attachments, dann wird die Mail als Textdatei in textdir gespeichert
if cntAtt = 0 then
mItems.item(x).SaveAs textdir & "att_" & CStr(x) & ".txt", 0
if Err.Number <> 0 then
return_value = 36
logwrite "Fehler bei Mail SaveAs" & " --- " & Err.Description & " / " & CStr(Err.Number), 1
Exit Sub
end if
else
'------ Besitzt die Email Attachments, dann werden die Attachments als MSG-Dateien in logdir gespeichert
'------ diese Emails werden wieder als MSG importiert und danach als Textdateien wieder in textdir gespeichert
'------ (man kann Attachments nicht aus einer Email in einen Postfach-Ordner kopieren)
for y = cntAtt to 1 step -1
'-------------- speichern der Attachments als MSG-Dateien
mailfile = logdir & "att_" & CStr(x) & "-" & CStr(y) & ".msg"
mAtts.item(y).SaveAsFile mailfile
if Err.Number <> 0 then
return_value = 37
logwrite "Fehler bei Att SaveAs" & " --- " & Err.Description & " / " & CStr(Err.Number), 1
Exit Sub
end if
'-------------- Importieren der gespeicherten Attachments ins Postfach
set newItem = outlApp.CreateItemFromTemplate(mailfile)
if Err.Number <> 0 then
return_value = 38
logwrite "Fehler bei CreateItemFromTemplate" & " --- " & Err.Description & " / " & CStr(Err.Number), 1
Exit Sub
end if
newItem.Save
if Err.Number <> 0 then
return_value = 39
logwrite "Fehler bei Save Mailitem" & " --- " & Err.Description & " / " & CStr(Err.Number), 1
Exit Sub
end if
'-------------- Speichern der Mails (Attachments) als Textdatei
newItem.SaveAs textdir & "att_" & CStr(x) & "-" & CStr(y) & ".txt", 0
if Err.Number <> 0 then
return_value = 40
logwrite "Fehler bei SaveAs Mailitem" & " --- " & Err.Description & " / " & CStr(Err.Number), 1
Exit Sub
end if
'-------------- Loeschen der Mails (Attachments)
newItem.Delete
if Err.Number <> 0 then
return_value = 41
logwrite "Fehler bei Delete Mailitem" & " --- " & Err.Description & " / " & CStr(Err.Number), 1
Exit Sub
end if
next
end if
next
Gruß
Egbert
Hi!
Unter www.mailhilfe.de gibt es diverse Tools.
Gruß, Marcus
Unter www.mailhilfe.de gibt es diverse Tools.
Gruß, Marcus