• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 2741
  • Last Modified:

Delphi 7 Indy 10 SASL authentication Exchange 2010

smtpServer := TidSMTP.Create(nil);
mailMessage := TidMessage.Create(nil);

// 3-17-2010 Indy 10.2.3 redefined auth. props.;
smtpServer.AuthType := satSASL;
smtpServer.UseEhlo := True;

smtpServer.Port := strtoint(smtpPort) ;//25;
smtpServer.Host := smtpHost; // Exchange server IP address;;
smtpServer.Username := smtpUser;
smtpServer.Password := smtpPwd ;

This is the code I have found but no one will show how to setup the code for encryption interface - Exchange 2010 requires encrypted connection.  NO SMTP plugin;
latest version to compile/install is Indy 10.2.3.

I need some coding help, please.
  • 2
1 Solution
I'm afraid I would need access to an Exchange 2010 server to be much help and with the prices that MS charges I cannot afford to implement that at home.  I did find a question in EE that details what it takes to use the MS RPC Encryption.


Once you have the MS RPC connection working the rest should be easy enough to handle with the INDY 10 SASL components.

While I hope this can get you started in the right direction I have no server to test against so I cannot write code that I have the ability to test.

I hope this helps.
VTDelphiAuthor Commented:
Sorry so long to respond.  We are deploying an Exchange server.
I did find an example of what I think may work:


I haven't completed testing - it requires OpenSSL.

We can retire this question if you like and I'll let you all know if this person's code solves my issue.

Thank you for your time,

That sounds good to me.  I can give you a little "heads up" on Open SSL.  It is a PAIN to install and get working on 64 bit systems.

Featured Post

[Webinar] Kill tickets & tabs using PowerShell

Are you tired of cycling through the same browser tabs everyday to close the same repetitive tickets? In this webinar JumpCloud will show how you can leverage RESTful APIs to build your own PowerShell modules to kill tickets & tabs using the PowerShell command Invoke-RestMethod.

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now