DataFlex
DataFlex
SMTP NTLM Authentication
See more SMTP Examples
Demonstrates how to specify NTLM authentication for sending email via SMTP.Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Boolean iSuccess
Handle hoMailman
Boolean iUseCurrentWindowsUser
Variant vEmail
Handle hoEmail
String sTemp1
Move False To iSuccess
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
Get Create (RefClass(cComChilkatMailMan)) To hoMailman
If (Not(IsComObjectCreated(hoMailman))) Begin
Send CreateComObject of hoMailman
End
// Specify your particular mail server's SMTP settings.
Set ComSmtpHost Of hoMailman To "smtp.my_mail_server.com"
Set ComSmtpPort Of hoMailman To 587
Set ComStartTLS Of hoMailman To True
// This assumes you know your SMTP server supports NTLM authentication.
// To explicitly request NTLM authentication, set the SmtpAuthMethod property = "ntlm".
Set ComSmtpAuthMethod Of hoMailman To "ntlm"
// Note: Normally you should avoid setting the SmtpAuthMethod.
// SMTP servers tell the connecting client the authentication methods it will accept when the initial connection is made.
// Chilkat will automatically use this information to select and use the most secure auth method supported by the server.
Move True To iUseCurrentWindowsUser
If (iUseCurrentWindowsUser = True) Begin
// If you are running on Windows, and you wish for the NTLM credentials of the current logged-on Windows user to be used,
// set the username and password to the string "default"
Set ComSmtpUsername Of hoMailman To "default"
Set ComSmtpPassword Of hoMailman To "default"
End
Else Begin
// Explicitly specify the SMTP username/password
// The SMTP username is your email account username, which is often your email address.
Set ComSmtpUsername Of hoMailman To "your_smtp_username_or_email_address"
Set ComSmtpPassword Of hoMailman To "your_password"
End
Get Create (RefClass(cComChilkatEmail)) To hoEmail
If (Not(IsComObjectCreated(hoEmail))) Begin
Send CreateComObject of hoEmail
End
Set ComSubject Of hoEmail To "This is a test"
Set ComBody Of hoEmail To "This is a test"
// Don't forget to change this to use your email addresses..
Set ComFrom Of hoEmail To "Chilkat Support <support@chilkatsoft.com>"
Get ComAddTo Of hoEmail "Chilkat Admin" "admin@chilkatsoft.com" To iSuccess
// To add more recipients, call AddTo, AddCC, or AddBcc once per recipient.
Get pvComObject of hoEmail to vEmail
Get ComSendEmail Of hoMailman vEmail To iSuccess
If (iSuccess <> True) Begin
Get ComLastErrorText Of hoMailman To sTemp1
Showln sTemp1
Procedure_Return
End
Get ComCloseSmtpConnection Of hoMailman To iSuccess
If (iSuccess <> True) Begin
Showln "Connection to SMTP server not closed cleanly."
End
Showln "Mail Sent!"
End_Procedure