Sample code for 30+ languages & platforms
B4X

SMTP Inspection

See more SMTP Examples

Examine an SMTP session to view all communications sent to the SMTP server.

Chilkat B4X Downloads

B4X
Dim success As Boolean = False

Dim mailman As ChilkatMailMan
mailman.Initialize("mailman")

mailman.SmtpHost = "smtp.example.com"
mailman.SmtpUsername = "myUsername"
mailman.SmtpPassword = "myPassword"

mailman.SmtpPort = 465
mailman.StartTLS = True

Dim email As ChilkatEmail
email.Initialize

email.Subject = "This is a test"
email.Body = "This is a test"
email.From = "Alex <alex@example.com>"
email.AddTo("Christoph", "christoph@example2.com")
email.AddBcc("Victor", "victor@example3.com")

'  Generate the MIME that is sent when SendEmail is called
Dim mimeStr As String = mailman.RenderToMime(email)
Log(mimeStr)

success = mailman.SendEmail(email)
If success = False Then
    Log(mailman.LastErrorText)
    Return
End If


success = mailman.CloseSmtpConnection
If success <> True Then
    Log("Connection to SMTP server not closed cleanly.")
End If


'  Examine the SMTP session log.
Log("----")
Log("Smtp Session Log:")
Log(mailman.SmtpSessionLog)

'  ---------------------------------------------------
'  Sample output:
'  ---------------------------------------------------

'  MIME-Version: 1.0
'  Date: Fri, 06 Mar 2026 16:21:00 -0600
'  Message-ID: <A5DC25990C93EC2676F4FBB2BB3BFA9EB34FF9D3@CHILKAT25>
'  Content-Type: text/plain; charset=us-ascii; format=flowed
'  Content-Transfer-Encoding: 7bit
'  X-Priority: 3 (Normal)
'  Subject: This is a test
'  From: Alex <alex@example.com>
'  To: Christoph <christoph@example2.com>
'  Bcc: Victor <victor@example3.com>
'  
'  This is a test
'  ----
'  Smtp Session Log:
'  220 smtp.example.com ESMTP Amazon WorkMail SMTP Service
'  EHLO MYCOMPUTER<CRLF>
'  250-smtp.example.com
'  250-8BITMIME
'  250-AUTH PLAIN LOGIN
'  250 Ok
'  AUTH LOGIN<CRLF>
'  334 VXNlcm5hbWU6
'  YWRtaW5AY2hpbGthdHNvZnQuY29t<CRLF>
'  334 UGFzc3dvcmQ6
'  {PasswordOrCredentials}
'  235 Authentication successful.
'  MAIL FROM:<alex@example.com><CRLF>
'  250 Ok
'  RCPT TO:<christoph@example2.com><CRLF>
'  250 Ok
'  RCPT TO:<victor@example3.com><CRLF>
'  250 Ok
'  DATA<CRLF>
'  354 End data with <CR><LF>.<CR><LF>
'  {388 bytes} <--- The MIME source of the email (examined via RenderToMime) was sent here.
'  <CRLF>.<CRLF>
'  250 Ok
'  QUIT<CRLF>
'  221 Bye