Home All Groups Group Topic Archive Search About

Intercepting emails as they are sent

Author
15 Jan 2009 11:08 AM
SeekerOfTruths
Hi, I've been asked to develop (despite having no prior experience with
Exchange) some sort of plugin that can intercept ALL emails at the point they
are sent.

I've looked at the SMTP OnArrival event, but this isn't sufficient as it
only catches emails as they leave the exchange server for hte outside world.
I need to be able to inspect ANY email at th epoin that it is sent, including
one's between mailboxes on the same Exchange server.

Can this be done, and if so what do I need to look at?
Author
15 Jan 2009 11:27 PM
Microsoft
Hi,
Yes it can.  You should look at transport sinks.  You can do some working
using CDO but there is a better option using .NET and wrapper classes around
the API's.

If you get the 2003 Exchange SDK and search on transport sink you should
find all the infor you need.


kind regards
Greg
http://www.geckoware.com.au


Show quoteHide quote
"SeekerOfTruths" <SeekerOfTru***@discussions.microsoft.com> wrote in message
news:147F2876-9296-4D36-899D-EB8D830D081F@microsoft.com...
> Hi, I've been asked to develop (despite having no prior experience with
> Exchange) some sort of plugin that can intercept ALL emails at the point
> they
> are sent.
>
> I've looked at the SMTP OnArrival event, but this isn't sufficient as it
> only catches emails as they leave the exchange server for hte outside
> world.
> I need to be able to inspect ANY email at th epoin that it is sent,
> including
> one's between mailboxes on the same Exchange server.
>
> Can this be done, and if so what do I need to look at?
Are all your drivers up to date? click for free checkup

Author
16 Jan 2009 11:34 AM
SeekerOfTruths
Thanks for the reply Greg. I've been looking through the Exchange 2003 SDK
documentation, but all the references to Transport Event Sinks seem to refer
to SMTP sinks - there's nothing that explains how to intercept emails that
are not using the SMTP route.

For example, if I send a colleague an email using MS Outlook, the email
passed to Exchange in MAPI format and would be resolved as a local message by
Exchange and placed on it's local message queue - it would never go through
the SMTP mechanism and thus not fire an event.

I've already played around with hooking the SMTP event and know that I can
catch those emails, but I need to be able to intercept the local ones too and
I'm not sure what events or APIs I need to make use of.

If there's any further information that you could give to help me in this
I'd really be very grateful.

Seeker

Show quoteHide quote
"Microsoft" wrote:

> Hi,
> Yes it can.  You should look at transport sinks.  You can do some working
> using CDO but there is a better option using .NET and wrapper classes around
> the API's.
>
> If you get the 2003 Exchange SDK and search on transport sink you should
> find all the infor you need.
>
>
> kind regards
> Greg
> http://www.geckoware.com.au
>
>
> "SeekerOfTruths" <SeekerOfTru***@discussions.microsoft.com> wrote in message
> news:147F2876-9296-4D36-899D-EB8D830D081F@microsoft.com...
> > Hi, I've been asked to develop (despite having no prior experience with
> > Exchange) some sort of plugin that can intercept ALL emails at the point
> > they
> > are sent.
> >
> > I've looked at the SMTP OnArrival event, but this isn't sufficient as it
> > only catches emails as they leave the exchange server for hte outside
> > world.
> > I need to be able to inspect ANY email at th epoin that it is sent,
> > including
> > one's between mailboxes on the same Exchange server.
> >
> > Can this be done, and if so what do I need to look at?
>
>

Bookmark and Share