Sample code for 30+ languages & platforms
Unicode C++

Transition from MailMan.MxLookupAll to the Chilkat DNS class

Provides instructions for replacing deprecated MxLookupAll method calls with the Chilkat Dns class.

Chilkat Unicode C++ Downloads

Unicode C++
#include <CkMailManW.h>
#include <CkStringArrayW.h>
#include <CkDnsW.h>
#include <CkJsonObjectW.h>

void ChilkatSample(void)
    {
    bool success = false;

    CkMailManW mailman;

    //  ...
    //  ...

    const wchar_t *emailAddr = L"joe@example.com";

    //  ------------------------------------------------------------------------
    //  The MxLookupAll method is deprecated:

    CkStringArrayW *sa = mailman.MxLookupAll(emailAddr);
    if (mailman.get_LastMethodSuccess() == false) {
        wprintf(L"%s\n",mailman.lastErrorText());
        return;
    }

    //  ...
    //  ...

    delete sa;

    //  ------------------------------------------------------------------------
    //  Do the equivalent using the Chilkat DNS class

    CkDnsW dns;

    CkJsonObjectW json;

    //  This gets all MX domains for an email address.  (Typically one domain.)
    //  The preferred domain will be at index 0 (see below).
    success = dns.Query(L"MX",emailAddr,json);
    if (success == false) {
        wprintf(L"%s\n",dns.lastErrorText());
        return;
    }

    int i = 0;
    int count_i = json.SizeOfArray(L"answer.mx");
    while (i < count_i) {
        json.put_I(i);
        const wchar_t *domain = json.stringOf(L"answer.mx[i].domain");
        wprintf(L"%s\n",domain);
        i = i + 1;
    }
    }