![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(PureBasic) Example: Email.GetDsnInfo methodSee more Email Object ExamplesDemonstrates how to call the GetDsnInfo method.Note: This example requires Chilkat v11.0.0 or greater.
IncludeFile "CkEmail.pb" IncludeFile "CkJsonObject.pb" Procedure ChilkatExample() email.i = CkEmail::ckCreate() If email.i = 0 Debug "Failed to create object." ProcedureReturn EndIf success.i = CkEmail::ckLoadEml(email,"qa_data/eml/sample_multipart_report.eml") If success = 0 Debug CkEmail::ckLastErrorText(email) CkEmail::ckDispose(email) ProcedureReturn EndIf json.i = CkJsonObject::ckCreate() If json.i = 0 Debug "Failed to create object." ProcedureReturn EndIf success = CkEmail::ckGetDsnInfo(email,json) If success = 0 Debug CkEmail::ckLastErrorText(email) CkEmail::ckDispose(email) CkJsonObject::ckDispose(json) ProcedureReturn EndIf CkJsonObject::setCkEmitCompact(json, 0) Debug CkJsonObject::ckEmit(json) ; 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: strVal.s reporting_mta.s = CkJsonObject::ckStringOf(json,"reporting-mta") action.s = CkJsonObject::ckStringOf(json,"action") status.s = CkJsonObject::ckStringOf(json,"status") remote_mta.s = CkJsonObject::ckStringOf(json,"remote-mta") x_supplementary_info.s = CkJsonObject::ckStringOf(json,"x-supplementary-info") x_display_name.s = CkJsonObject::ckStringOf(json,"x-display-name") i.i = 0 count.i = CkJsonObject::ckSizeOfArray(json,"final-recipient") While i < count CkJsonObject::setCkI(json, i) strVal = CkJsonObject::ckStringOf(json,"final-recipient[i]") i = i + 1 Wend CkEmail::ckDispose(email) CkJsonObject::ckDispose(json) ProcedureReturn EndProcedure |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.