I am using Delphi 7 and Indy 10. I added email capabilities to my program
using TIdMessage and TIdSMTP. All works fine from my system (modem router
connected directly to my lan port), and most of my clients works fine, but
some are having problems such as :
exception class : EIdSMTPReplyError
exception message : Directory unavailable.
Some have the same exception class, but the message is : Unknown.
I don't know much about ms exchange, but are there any guidelines about how
these should be setup. Are the settings different to what is needed for a
simple network without exchange ?
Should I allow the AuthType property to be set by the user. This is set to
atDefault at the moment.
UseEhlo is True.
UseTLS is utNoTLSSupport.
Any ideas why I am getting these errors on some clients. Any ideas how to
get this working ?
Thanks for any help,
Cheers,
Paul
> exception class : EIdSMTPReplyError
EIdSMTPReplyError is throw when the server returns an error in reply to a
command.
> exception message : Directory unavailable.
There is no way to diagnose that for sure without seeing the
commands/replies and the server's trace logs, but looking at prior
discussions about that error message suggest that it may be a relaying error
on the server side that is being passed back to you. Your exchange server
might be trying to establish an outbound connection to another server, and
it is that server that is sending back the original error. Have a look at
the newsgroup archives for yourself:
http://groups.google.com/groups?q=smtp+%22directory+unavailable%22
> Some have the same exception class, but the message is : Unknown.
Then the server is not providing an error message, or "Unknown" is the
actual message.
> Are the settings different to what is needed for a simple network
> without exchange ?
No. SMTP is SMTP regardless of the server software being used.
> Should I allow the AuthType property to be set by the user.
That is up to you to decide.
> This is set to atDefault at the moment.
That will use the outdated AUTH LOGIN command, which many servers do not
support anymore as it is not secure. It has not been completely obsoleted
yet, so many servers do still accept it, but it is not recommended anymore.
If you set AuthType to atSASL instead, then you can use TIdSMTP's
SASLMechanisms collection to use stronger encryption methods, such as
CRAM-MD5. You can also continue to support AUTH LOGIN via the
SASLMechanisms collection as well.
Gambit