Solved

Fetching the full path of Outlook email attachement with .NET

Posted on 2008-10-21
7
951 Views
Last Modified: 2013-11-10
Hi everyone.

I am trying to create an Add-in to outlook that gets the attachement and send the to another program. I'm using VB and I attach the relevant part of the code.

My problem is that  the string is empty. So my question is: How can I get the full path of the attachment?

For info, I test with Outlook 2007 and develop on Visual Studio 2008.
Dim currentMailItem = CType(Me.Application.ActiveInspector().CurrentItem, Outlook.MailItem)

For i = 1 To currentMailItem.Attachments.Count

Dim fileString As String = currentMailItem.Attachments.Item(i).PathName

Next i

Open in new window

0
Comment
Question by:__geof__
  • 4
  • 2
7 Comments
 
LVL 10

Expert Comment

by:kdwood
ID: 22772351
Greetings geof,

I may be wrong, but I don't think you can do it that way.  The attachment is stored in the Outlook item itself and is accessible only through that item's Attachments collection. The Attachment.PathName property is relevant only for linked files that have the type OlByReference.

I think you will need to save the attachment to disk and then interact with it.

See if this link will help:

http://www.codeproject.com/KB/office/OAE.aspx

Regards,

Keith
0
 
LVL 6

Author Comment

by:__geof__
ID: 22774179
That is the workaround I am working with now but the problem is that I sometimes need a lot of diskspace and I want to avoid it.

Is there no possibility to get the path of the attached file?
0
 
LVL 10

Expert Comment

by:kdwood
ID: 22781006
Can you give me a better idea of what you are trying to do with the attachment?  This may give me a few ideas.

Thanks,

Keith
0
Maximize Your Threat Intelligence Reporting

Reporting is one of the most important and least talked about aspects of a world-class threat intelligence program. Here’s how to do it right.

 
LVL 6

Author Comment

by:__geof__
ID: 22781577
I need them to use in a Shell call to a batch file.
It is a program that sends files and it needs the path of every file to send. Allows you to send i.e. 100GB or more. And I just want to make an outlook add-in for our employees.
0
 
LVL 6

Author Comment

by:__geof__
ID: 22880318
It does't look like there is any solution. I actually copy the attachement to a temporary folder where I can fetch them and remove them afterwards. It is not a good solution but it looks like the only one.
0
 

Expert Comment

by:michael2705
ID: 23366918
I think geof is right. I coudn't find another way yet. Here's the code I use:
my_AddIn.eMail.Attachments[i].SaveAsFile(my_file_path_for_attachment);	

Open in new window

0
 
LVL 6

Accepted Solution

by:
__geof__ earned 0 total points
ID: 24242642
I search for a long time now without anything better. I think we can close the discussion without any solution. :(
0

Featured Post

How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

Join & Write a Comment

A theme is a collection of property settings that allow you to define the look of pages and controls, and then apply the look consistently across pages in an application. Themes can be made up of a set of elements: skins, style sheets, images, and o…
Calculating holidays and working days is a function that is often needed yet it is not one found within the Framework. This article presents one approach to building a working-day calculator for use in .NET.
This is Part 3 in a 3-part series on Experts Exchange to discuss error handling in VBA code written for Excel. Part 1 of this series discussed basic error handling code using VBA. http://www.experts-exchange.com/videos/1478/Excel-Error-Handlin…
This video gives you a great overview about bandwidth monitoring with SNMP and WMI with our network monitoring solution PRTG Network Monitor (https://www.paessler.com/prtg). If you're looking for how to monitor bandwidth using netflow or packet s…

707 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

13 Experts available now in Live!

Get 1:1 Help Now