The most common way to do things like this is not to intercept the
connection to Exchange, but to replace it. Create your app as an SMTP
server proxy. The internet will connect to your app if they want to send
your company an e-mail. Your app can decide if it should pass along that
message to exchange. You can either capture the entire message (common in
apps that are trying to stop a DoS attack) or you can capture each command
and forward it. If you do the former, you get much more control, but you
need to develop a complete system to capture, store, and forward e-mail. If
you do the latter, your code is simpler, but less effective.
You should be able to download most of the code for an SMTP server in .Net
from one of the online sites. That will give you a start.
There are commercial products that do this, of course. You may want to
consider investing a few thousand dollars if you are just doing this for
your own organization. If on the other hand, you are developing a new
commercial package... I wish you the best of luck and prosperity.
--
--- Nick Malik [Microsoft]
MCSD, CFPS, Certified Scrummaster
http://blogs.msdn.com/nickmalik
Disclaimer: Opinions expressed in this forum are my own, and not
representative of my employer.
I do not answer questions on behalf of my employer. I'm just a
programmer helping programmers.
--
"Comconix" <Co******@discussions.microsoft.com> wrote in message
news:0E**********************************@microsof t.com...
I have some ideas that I would like to try in eliminating DoS, unwanted
SMTP
connections/sessions, etc. to my Exchange server. To do this I need to
write
code that examines each SMTP attempt to connect (HELO) message and
determine
whether I would like to allow them to connect or not and then notify
Exchange
to allow or disconnect the session
Is there an API or SDK that allows me this degree of interaction and
control
over Exchange? If so, what options do I have?
I am using Exchange 2003 on Windows 2003 Enterprise Service. I would
prefer
to use C#, but unmanaged C++ is also fine
thanks
M