Outlook – Extract and view Outlook contacts attachment sent to Gmail

attachmentsgmailmicrosoft-outlook

A friend forwarded a contact list to my gmail account from Outlook (2007 or 2010, not sure which). I can see there is an attachment in gmail but when I save it to my local drive it's just a plain text file containing the text This attachment is a MAPI 1.0 embedded message and is not supported by this mail system.

If I use gmail's "show original message" it contains in part:

This is a multipart message in MIME format.

------=_NextPart_000_0016_01CC6656.CE12F030
Content-Type: text/plain;
    charset="us-ascii"
Content-Transfer-Encoding: 7bit

------=_NextPart_000_0016_01CC6656.CE12F030
Content-Type: application/ms-tnef;
    name="winmail.dat"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
    filename="winmail.dat"

eJ8+Ih0VAQaQCAAEAAAAAAABAAEAAQeQBgAIAAAA5AQAAAAAAADoAAEIgAcAGAAAAElQTS5NaWNy
b3NvZnQgTWFpbC5Ob3RlADEIAQgABQAEAAAAAAAAAAAAAQkABAACAAAAAAAAAAEDkAYASAgAACgA

--8<---snip---8<--

GUC/9NKH95rABgMA/g8HAAAAAwANNP0/pQ4DAA80/T+lDvAm

------=_NextPart_000_0016_01CC6656.CE12F030--

How do I

  1. save the attached winmail.dat properly, and
  2. open the winmail.dat and extract the contact list?

I'm running Windows 7 x64, but have access to an ubuntu linux vmware appliance if needed. I have Outlook 2010, but can't use it to connect directly to gmail as pop3 and imap are blocked by the corporate firewall.

Best Answer

Solved! but talk about a circuituous route:

  1. in gmail, show original message
  2. save to disk (contacts-raw.txt)
  3. edit and put From me@gmail.com 29 Aug 2011 in first line (note absence of :), the date doesn't matter (ref)
  4. copy to linux machine and:
    1. process with formail to make it a proper mbox format (ref1, ref2)
      formail -ds <contacts-raw.txt >> contacts.mbox
    2. use mutt to bounce it to my work address (where I have Outlook 2010), use the b command for bounce (ref):
      mutt -f contacts.mbox
  5. When received in Outlook 2010 double-click on attached distribution list, save as .txt
  6. Replace embedded tabs with commas, rename contacts.csv, and now finally(!) use as originally intended.

Sheesh.


Postcript: I tried every single one of the windows and online applications listed on the Wikipedia page for the TNEF format and not one listed the distribution list buried in winmail.dat. I did find a program called WinDeveloper TNEF View which could at least see the entries, but it fared no better than a binary hexeditor like Frhed, and demanded an email (and 1 hour delay) to get a license key even for the trial.

As best I can determine the original list was sent to using the command "Forward as Outlook Contact" and considering that as I write this there are only 3 search results for that string I'd guess it's an under-utilized feature, and now I know why!

Related Question