Unicode C++
Unicode C++
Example: Email.GetDsnInfo method
See more Email Object Examples
Demonstrates how to call the GetDsnInfo method.Chilkat Unicode C++ Downloads
#include <CkEmailW.h>
#include <CkJsonObjectW.h>
void ChilkatSample(void)
{
bool success = false;
CkEmailW email;
success = email.LoadEml(L"qa_data/eml/sample_multipart_report.eml");
if (success == false) {
wprintf(L"%s\n",email.lastErrorText());
return;
}
CkJsonObjectW json;
success = email.GetDsnInfo(json);
if (success == false) {
wprintf(L"%s\n",email.lastErrorText());
return;
}
json.put_EmitCompact(false);
wprintf(L"%s\n",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:
const wchar_t *strVal = 0;
const wchar_t *reporting_mta = json.stringOf(L"reporting-mta");
const wchar_t *action = json.stringOf(L"action");
const wchar_t *status = json.stringOf(L"status");
const wchar_t *remote_mta = json.stringOf(L"remote-mta");
const wchar_t *x_supplementary_info = json.stringOf(L"x-supplementary-info");
const wchar_t *x_display_name = json.stringOf(L"x-display-name");
int i = 0;
int count = json.SizeOfArray(L"final-recipient");
while (i < count) {
json.put_I(i);
strVal = json.stringOf(L"final-recipient[i]");
i = i + 1;
}
}