View Single Post
  #4  
Old April 25th 08, 01:51 PM posted to microsoft.public.outlook.program_addins,microsoft.public.developer.outlook.addins
Ken Slovak - [MVP - Outlook]
external usenet poster
 
Posts: 5,848
Default Automatically sending and tracking encrypted e-mails. How?

If you are using Outlook 2007 you can use the new PropertyAccessor object to
access those MAPI properties. The use of PropertyAccessor is covered in the
Help for the Object Browser in Outlook 2007.

If you are using an earlier version of Outlook there is no PropertyAccessor
or any other way of accessing those properties using the Outlook object
model. You have to use an alternate API. Neither Extended MAPI (C++ or
Delphi only) or CDO 1.21 are supported for managed code. I'd use the
Redemption (www.dimastr.com/redemption) COM wrapper for Extended MAPI, which
can be used with C#. There are lots of code samples out there for using the
Fields collection of an item from Redemption.

--
Ken Slovak
[MVP - Outlook]
http://www.slovaktech.com
Author: Professional Programming Outlook 2007
Reminder Manager, Extended Reminders, Attachment Options
http://www.slovaktech.com/products.htm


"Bila" wrote in message
...
On Apr 24, 8:22 pm, "Ken Slovak - [MVP - Outlook]"
wrote:
As far as #1 goes, if you use .NET mail classes that has nothing to do
with
Outlook and is better addressed somewhere else. I have no idea about that
stuff. Executing a CommandBarButton for encryption is about the only way
to
do that in code using Outlook, but you previously said that you were
willing
to let the users do it manually. So either way.

OK, I might have not explained it properly. Under "manually if
required" I meant doing encryption by hand, that is, adding additional
code to handle certificate retrieval via LDAP and e-mail content
encryption instead of letting outlook handle everything automatically.
The end user must not take any additional actions or see any windows
or messages coming from Outlook or whatever else besides my app during
mail sending. Process must be fully automatic. In any case, it's clear
that I need to dump Outlook for this part.


I don't think that bounces is any realistic way to go. You cannot rely on
that. I have my server set not to send bounce messages and a lot of
Exchange
admins I know also set their servers that way. So totally unreliable is
how
I'd describe that. You also said earlier that you were only sending
emails
internally so what do Internet bounce messages have to do with that? Use
the
property I mentioned to earlier.

The property is already being used (or similar delivery report
requests when using .NET classes from System.Net.Mail.*) so I am
getting all delivery reports I need, that is not the issue here. What
I am asking is:
- how to programatically bind a certain delivery report to the
original e-mail that has been sent and caused that very same delivery
report to be generated.
- find out the type of the delivery report (Delivered, Read, not
delivered...).

I can iterate through delivery reports (ReportItem) objects from Inbox
but what do I need to do with them to get required information?
I really do not want to parse the delivery report content text and
extract the required information because to me that seems out right
silly. I'd like to do it in a programmatic way and what I found
through OutlookSpy is that PR_NDR_XXX, PR_DELIVER_TIME and
PR_EMAIL_ADDRESS MAPI tags should provide me all information I need.
Do you know how to extract values of those tags using C#? OutlookSpy
obviously can do it but i don't know how does it do it.


--
Ken Slovak
[MVP - Outlook]http://www.slovaktech.com
Author: Professional Programming Outlook 2007
Reminder Manager, Extended Reminders, Attachment
Optionshttp://www.slovaktech.com/products.htm

"Bila" wrote in message

...


Ads