Sample code for 30+ languages & platforms
Visual FoxPro

MX Lookup Mail Server Domain by Email Address

How to find the mail server for a given email address. Returns the domain name of the primary mail server.

Chilkat Visual FoxPro Downloads

Visual FoxPro
LOCAL lnSuccess
LOCAL loDns
LOCAL loJson
LOCAL lcEmailAddr
LOCAL i
LOCAL lnCount_i
LOCAL lcDomain

lnSuccess = 0

* This example requires the Chilkat API to have been previously unlocked.
* See Global Unlock Sample for sample code.

loDns = CreateObject('Chilkat.Dns')
loJson = CreateObject('Chilkat.JsonObject')

lcEmailAddr = "bob@example.com"

* This gets all MX domains for an email address.  (Typically one domain.)
* The preferred domain will be at index 0 (see below).
lnSuccess = loDns.Query("MX",lcEmailAddr,loJson)
IF (lnSuccess = 0) THEN
    ? loDns.LastErrorText
    RELEASE loDns
    RELEASE loJson
    CANCEL
ENDIF

i = 0
lnCount_i = loJson.SizeOfArray("answer.mx")
DO WHILE i < lnCount_i
    loJson.I = i
    lcDomain = loJson.StringOf("answer.mx[i].domain")
    ? lcDomain
    i = i + 1
ENDDO

RELEASE loDns
RELEASE loJson