View Single Post
  #5  
Old May 29th 08, 05:46 PM posted to microsoft.public.outlook.program_vba
Homr Zodyssey[_2_]
external usenet poster
 
Posts: 1
Default Process E-mail attachements


I misspoke when I said they were EML files. They were MSG files. I ended
up fixing the problem by saving each MSG file to disk then opening it.

Sub saveAttachments(mitem As MailItem)
Dim att_mitem As MailItem
Dim new_fname As String

For i = 1 To mitem.Attachments.Count
Select Case mitem.Attachments.item(i).Type
Case olByValue
fileCount = fileCount + 1
new_fname = "C:\attachments\" & Right("0000" & fileCount, 4)
& "." & Right(mitem.Attachments.item(i).FileName, 3)
LogMessage (vbTab & mitem.Attachments.item(i).FileName & "
-- " & new_fname)
mitem.Attachments.item(i).SaveAsFile (new_fname)
Case olEmbeddeditem
mitem.Attachments.item(i).SaveAsFile
("C:\attachments\tmp.msg")
Set att_mitem =
Application.CreateItemFromTemplate("C:\attachments \tmp.msg")
LogMessage ("**" & vbTab & att_mitem.Subject)
saveAttachments att_mitem
End Select
Next

End Sub

"Dmitry Streblechenko" wrote:

You would need to first convert the EML files (which Outlook does not
understand natively) to regular messages.
There is nothing in OOM that can help you. Outlook 2002 and higher expose
IConverterSEssion object that can be used for conversion in Extended MAPI
(C++ or Delphi only).
plug
you can use Redemption to import EML files to Outlook (see
SafeMailItem.Import) or (if you do not want the temporary messages in
Outlook) you can create temporary standalone MSG files and import EML files:

set Session = CreateObject("Redemption.RDOSession")

set Msg = Session.CreateMessageFromMsgFile("c:\temp\test.msg ", "IPM.Note",
1)

Msg.Import "c:\Temp\attach.eml", 1024

Msg.Save

MsgBox Msg.Attachments.Count



/plug

--
Dmitry Streblechenko (MVP)
http://www.dimastr.com/
OutlookSpy - Outlook, CDO
and MAPI Developer Tool
-
"Homr Zodyssey" Homr wrote in message
news
I'm having a similar dilemma, I think.

I received a dozen emails. Each of them has a dozen more emails as
attachments (.eml files). Each of these has multiple attachmetns that are
files like PDFs, CSVs, etc.

I'm having trouble accessing the attachments of the attachments using VBA.




Ads
 

Credit Cards - Destin, Florida - Mortgage Calculator - Debt - Mortgages