Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Unicode C) DNS Query MX RecordsSee more DNS ExamplesShows how to perform a DNS query to retrieve MX records. Note: This example requires Chilkat v9.5.0.96 or later.
#include <C_CkDnsW.h> #include <C_CkJsonObjectW.h> void ChilkatSample(void) { HCkDnsW dns; HCkJsonObjectW json; BOOL success; const wchar_t *name; int ttl; int pref; const wchar_t *domain; int i; int count_i; dns = CkDnsW_Create(); json = CkJsonObjectW_Create(); CkJsonObjectW_putEmitCompact(json,FALSE); success = CkDnsW_Query(dns,L"MX",L"somebody@gmail.com",json); if (success == FALSE) { wprintf(L"%s\n",CkDnsW_lastErrorText(dns)); CkDnsW_Dispose(dns); CkJsonObjectW_Dispose(json); return; } wprintf(L"%s\n",CkJsonObjectW_emit(json)); // Sample response. // Parsing code below.. // ------------------------------------------------------------------------------- // Note: Chilkat will return the results sorted by "pref" from lowest to highest. // ------------------------------------------------------------------------------- // { // "answer": { // "mx": [ // { // "name": "gmail.com", // "ttl": 491, // "pref": 5, // "domain": "gmail-smtp-in.l.google.com" // }, // { // "name": "gmail.com", // "ttl": 491, // "pref": 10, // "domain": "alt1.gmail-smtp-in.l.google.com" // }, // { // "name": "gmail.com", // "ttl": 491, // "pref": 20, // "domain": "alt2.gmail-smtp-in.l.google.com" // }, // { // "name": "gmail.com", // "ttl": 491, // "pref": 30, // "domain": "alt3.gmail-smtp-in.l.google.com" // }, // { // "name": "gmail.com", // "ttl": 491, // "pref": 40, // "domain": "alt4.gmail-smtp-in.l.google.com" // } // ] // } // } // Use this online tool to generate parsing code from sample JSON: // Generate Parsing Code from JSON i = 0; count_i = CkJsonObjectW_SizeOfArray(json,L"answer.mx"); while (i < count_i) { CkJsonObjectW_putI(json,i); name = CkJsonObjectW_stringOf(json,L"answer.mx[i].name"); ttl = CkJsonObjectW_IntOf(json,L"answer.mx[i].ttl"); pref = CkJsonObjectW_IntOf(json,L"answer.mx[i].pref"); domain = CkJsonObjectW_stringOf(json,L"answer.mx[i].domain"); i = i + 1; } CkDnsW_Dispose(dns); CkJsonObjectW_Dispose(json); } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.