Home

Buy Now

Products
  InaAuthenticate
  InaAuthenticate.Net
  InaCalcStd (Free)
  InaCalcPro
  InaCalc.Net
  InaCardCheck
  InaCardCheck.Net
  InaClock
  InaClockCtrl
  InaClockCtrl.Net
  InaCryptCompress.Net
  InaEmailCheck
  InaEmailCheck.Net
  InaEmailSend
  InaFileConverter
  InaGrid
  InaSysTray
  InaUploadFile
  InaXplorer

  XComp (Free)

Support

About

Press Releases
   .Net
   InaAuthenticate
   InaCalc
   InaCardCheck
   InaClock
   InaEmailCheck
   InaEmailSend
   InaGrid
   InaUploadFile

ComponentSource Professional Partner

InaEmailCheck Frequently Asked Questions (FAQ)


How do I contact Inabyte Inc?
What’s in the evaluation version of InaEmailCheck?
What does the InaEmailCheck control do?
How do I create an InaEmailCheck control in an application?
How do I validate an email address?
Can I validate if a domain can except mail without having the email address checked?
Can I validate the syntax of an email address?
What kind of licensing agreement do I need to distribute InaEmailCheck control?
What kind of licensing agreement do I need to run InaEmailCheck on a server?
What do the error numbers mean?

What’s in the evaluation version of InaEmailCheck?

The evaluation version of InaEmailCheck is a full version of the product that expires 30 days after installation.

(Back to top)

What does the InaEmailCheck control do?

The InaEmailCheck control can verify an email address or a mail domain.

The control checks syntax, mail domain, mail servers and finally mailbox (user).

Some mail servers restrict the validation of users and so these addresses cannot be validated without actually sending an email to the address. InaEmailCheck returns a warning for these servers.

Generally if InaEmailCheck returns less than 0, the email address is bad.

(Back to top)

How do I create an InaEmailCheck control in an application?

Visual Basic:

To add the InaEmailCheck control to your project, select Project | References... Select InaEmailCheck from the list.

Dim obLookup As InaEmailCheck

Set obLookup = CreateObject("Inabyte.InaEmailCheck")

If obLookup Is Nothing Then
    MsgBox "Evaluation Period Expired"
End If

Visual C++:

To add the InaEmailCheck control to your project use the #import directive in stdafx.h.

#import "InaEmailCheck.dll" no_namespace

Then use

IInaEmailCheckPtr    pLookup;

hResult = pLookup.CreateInstance("Inabyte.InaEmailCheck");

if (hResult == S_OK)
    pLookup->DnsServer = (LPCTSTR)csDNSServer;
else
    AfxMessageBox(hResult == E_ACCESSDENIED ? _T("Control Evaluation Period Expired") : _T("Control Not Registered"));

(Back to top)

How do I validate an email address?

Validating email addressed can be done in one simple call to the InaEmailCheck control:

Visual Basic

Dim eReturn As inaEmailCheckErrors

eReturn = obLookup.Verify(strEmailAddress)

Visual C++

inaEmailCheckErrors lErrorCode;

lErrorCode = pLookup->Verify((LPCTSTR)csEmailAddress);

(Back to top)

Can I validate if a domain can except mail without having the email address checked?

Yes. Validating mail servers can be done in one simple call to the InaEmailCheck control:

Visual Basic

If obLookup.Lookup(strDomain).Count < 1 Then
    MsgBox(“No mail server!”);
End If

Visual C++

If (pLookup->Lookup((LPCTSTR)m_Domain).Count < 1)
    AfxMessageBox(“No mail server!”);

(Back to top)

Can I validate the syntax of an email address?

Yes. Validating the syntax does not require any calls to a DNS server or mail server. The method is ValidateSyntax (please note that unlike the Verify/Lookup methods this strictly conforms to RFC821 and requires the email address start with a "<" and end with a ">"):

Visual Basic

If Left(strAddress, 1) <> "<" Then
    strAddress = "<" & strAddress & ">"
End If

eReturn = obLookup.ValidateSyntax(strAddress)

MsgBox "Syntax: " & obLookup.GetErrorString(eReturn) & ", ErrorCode " & Str(eReturn)

Visual C++

CString cs;

cs.Format(csDomain.Find('<') == 0 ? "%s" : "<%s>", (LPCTSTR)csDomain);

lErrorCode = pLookup->ValidateSyntax((LPCTSTR)cs);

cs.Format("Syntax: %s, ErrorCode %ld", (LPCTSTR)pLookup->GetErrorString(lErrorCode), lErrorCode);

(Back to top)

What kind of licensing agreement do I need to distribute InaEmailCheck control?

You are required to purchase a license in order to distribute applications that contain one or more InaEmailCheck controls. Without this license, the InaEmailCheck control is considered under evaluation.

If you are writing web applications then additional server licenses would also be required. See below.

(Back to top)

What kind of licensing agreement do I need to run InaEmailCheck on a server?

You are required to purchase a license in order to run InaEmailCheck on a server. Without this license, the InaEmailCheck control is considered under evaluation. One license per server is required.

$249 per Developer is a license that everyone pays regardless of subsequent deployment. A 3 man team means 3 licenses. If the product is subsequently deployed on a Server Node/PC for Client Server or on a Web Server Node/PC you need to buy a $249 license per node. A 10 node web site with the component on 6 of the nodes requires 6 licenses to be purchased.

(Back to top)

What do the error numbers mean?

InaEmailCheck provides an error number for each email address validation. This simply means total success, a warning or no good.

eSuccess = 0

eWarning_DNSNameConnect = 1 Domain Name Good, No further response from DNS
eWarning_NoMailConnect = 2
Domain Name Good, MX Record Good, No Response from SMTP server
eWarning_CannotVerify = 3
Domain Name Good, MX Record Good, SMTP server good, Does not verify addresses
eWarning_BadResponse = 4
Domain Name Good, MX Record good, SMTP server Good, Strange final response

eError_Empty = -1 Email address emtpy (no further checking done)
eError_Syntax = -2
Email address not compliant with RFC 821 (without "@" or ".", etc, no further checking done)
eError_MXLookup = -3
DNS Server gave strange response (Indeterminate Result)
eError_NoMXRecords = -4
Domain Name Good, No MX Records Returned (Not an SMTP Address)
eError_BadEmailAddress = -5
Domain Name Good, MX Record Good, SMTP Server Good, Address validated as bad

Generally if InaEmailCheck returns less than 0, the email address is bad.

(Back to top)

How do I contact Inabyte Inc.?

By Phone   415-898-7905
By Fax   415-898-1652
By Email   support@inabyte.com
   info@inabyte.com
By Internet   http://www.inabyte.com/support.html
   http://www.inabyte.com
By US Mail   Inabyte Inc.
   PO Box 728
   Novato CA 94948-0728
   USA

(Back to top)

Samples Provided

See what InaEmailCheck can do for you. Download  InaEmailCheck and its samples (MFC, VB, J++ and ASP) and see it’s capabilities


Home Products Support About Press Releases

Copyright 1996 - 2005 by Inabyte Inc., Novato, California, USA
Last modified: Thursday, October 09, 2003 08:22

Inabyte Inc.
5 Betty Lane
Novato CA 94947
Phone: +1 415 898 7905
Fax: +1 415 898 1652