Sample code for 30+ languages & platforms
Xojo Plugin

Example: Email.GetDsnInfo method

See more Email Object Examples

Demonstrates how to call the GetDsnInfo method.

Chilkat Xojo Plugin Downloads

Xojo Plugin
Dim success As Boolean
success = False

Dim email As New Chilkat.Email

success = email.LoadEml("qa_data/eml/sample_multipart_report.eml")
If (success = False) Then
    System.DebugLog(email.LastErrorText)
    Return
End If

Dim json As New Chilkat.JsonObject
success = email.GetDsnInfo(json)
If (success = False) Then
    System.DebugLog(email.LastErrorText)
    Return
End If

json.EmitCompact = False
System.DebugLog(json.Emit())

// Sample output:

// {
//   "reporting-mta": "dns; Exchange2016.example.com",
//   "final-recipient": [
//     "herb.butterworth1247692846@gmail.com"
//   ],
//   "action": "failed",
//   "status": "5.1.1",
//   "remote-mta": "dns; mx.google.com",
//   "x-supplementary-info": "<mx.google.com #5.1.1 smtp;550-5.1.1 The email account that you tried to reach does not exist. Please try 550-5.1.1 double-checking the recipient's email address for typos or 550-5.1.1 unnecessary spaces. Learn more at 550 5.1.1  https://support.google.com/mail/?p=NoSuchUser o8-20020a056870968800b001b55816bea9si2188132oaq.70 - gsmtp>",
//   "x-display-name": "herb.butterworth1247692846@gmail.com"
// }

// Code for parsing the JSON:

Dim strVal As String

Dim reporting_mta As String
reporting_mta = json.StringOf("reporting-mta")
Dim action As String
action = json.StringOf("action")
Dim status As String
status = json.StringOf("status")
Dim remote_mta As String
remote_mta = json.StringOf("remote-mta")
Dim x_supplementary_info As String
x_supplementary_info = json.StringOf("x-supplementary-info")
Dim x_display_name As String
x_display_name = json.StringOf("x-display-name")
Dim i As Int32
i = 0
Dim count As Int32
count = json.SizeOfArray("final-recipient")
While i < count
    json.I = i
    strVal = json.StringOf("final-recipient[i]")
    i = i + 1
Wend