Ho trovato questa altra risorsa sul web.
Al momento ho scaricato solo il codice (link a destra) ma non so valutare se funziona o meno.
E purtroppo non è tra le priorità da lavorare.
Riporto comunque il codice scaricato, magari gli date un'occhiata voi
codice:
<%@ EnableSessionState=False LANGUAGE="VBSCRIPT" %>
<%
Option explicit
Response.Buffer = false
%>
<!--
'// ValidateEmail sample script
'//
'// Demonstrates use of HexValidEmail
'//
'// Copyright (C) 2000 Hexillion Technologies. All rights reserved.
'//
-->
<html>
<head>
<title>Hexillion ValidateEmail sample</title>
</head>
<body bgcolor="#FFFFFF" text="#000000" vlink="#808080" link="#0000FF">
<%
dim oVE
dim sAddr, iLevel, lTimeoutDns, lTimeoutSmtp
dim bExtraText, bDomainDot, bDomainLiterals, bMx, bVrfy, bCatchAll
dim sErr
'// Create object
set oVE = Server.CreateObject( "HexValidEmail.Connection" )
'// Check for form input, set defaults
sAddr = Request( "addr" )
if "" = sAddr then sAddr = "test@hotmail.com"
if "" <> request( "level" ) then
iLevel = cint( request( "level" ) )
else
iLevel = hexVeLevelSmtp
end if
if "" <> request( "to_dns" ) then
lTimeoutDns = clng( request( "to_dns" ) )
else
lTimeoutDns = oVE.Timeouts(hexVeTimeoutDnsTotal)
end if
if "" <> request( "to_smtp" ) then
lTimeoutSmtp = clng( request( "to_smtp" ) )
else
lTimeoutSmtp = oVE.Timeouts(hexVeTimeoutSmtpTotal)
end if
bExtraText = ("" <> request( "extra_text" ))
bDomainDot = ("" <> request( "domain_dot" ))
bDomainLiterals = ("" <> request( "dom_literals" ))
bMx = ("" <> request( "mx" ))
bVrfy = ("" <> request( "vrfy" ))
bCatchAll = ("" <> request( "catchall" ))
%>
<table cellpadding="5" width="100%"><tr>
<td colspan="2" bgcolor="#E1EFFF"><font face="Arial" size="5">ValidateEmail sample</font>
</td></tr>
<tr>
<td valign="top" bgcolor="#E1EFFF">
<form method="POST" action="<%= request( "SCRIPT_NAME" ) %>">
<table cellpadding="5">
<tr>
<td>email address
<input type="text" name="addr" size="35" value="<%= server.HTMLEncode( sAddr ) %>"></td>
<td>validation level
<select name="level">
<%
dim i
For i = hexVeLevelSyntax To hexVeLevelSmtp
Response.Write "<option "
if iLevel = i then Response.Write "selected "
Response.Write "value=""" & i & """>" & GetVeLevelString( i ) & "</option>" & vbcrlf
Next
%>
</select>
</td>
<td valign="bottom"><input type="submit" value="Go" name="B1"></td>
</tr>
<tr>
<td>DNS timeout (ms)
<input type="text" name="to_dns" size="10" value="<%= lTimeoutDns %>"></td>
<td colspan="2">SMTP timeout (ms)
<input type="text" name="to_smtp" size="10" value="<%= lTimeoutSmtp %>"></td>
</tr>
<tr>
<td><input type="checkbox" name="extra_text" value="1" <%= iif( bExtraText, "checked", "" ) %>>allow extra text</td>
<td colspan="2"><input type="checkbox" name="domain_dot" value="1" <%= iif( bDomainDot, "checked", "" ) %>>don't require domain dot</td>
</tr>
<tr>
<td><input type="checkbox" name="dom_literals" value="1" <%= iif( bDomainLiterals, "checked", "" ) %>>disallow domain literals</td>
<td colspan="2"><input type="checkbox" name="mx" value="1" <%= iif( bMx, "checked", "" ) %>>require MX records</td>
</tr>
<tr>
<td><input type="checkbox" name="vrfy" value="1" <%= iif( bVrfy, "checked", "" ) %>>try VRFY and EXPN</td>
<td colspan="2"><input type="checkbox" name="catchall" value="1" <%= iif( bCatchAll, "checked", "" ) %> ID="Checkbox1">test for catch-all</td>
</tr>
</table>
</form>
</td>
<td valign="top" bgcolor="#E1EFFF">
<table border="0" cellspacing="0" cellpadding="7">
<tr>
<td colspan="2">powered by HexGadgets
<font size="-1">
view source
| download
</font></td>
</tr>
<%
WriteLicenseRow "HexValidEmail", oVE
%>
</table>
</td>
</tr></table>
<%
if "" <> request( "addr" ) then
dim iRating
'// Identify yourself for SMTP (use your own information here)
'// See http://www.hexillion.com/docs/guides...lite_usage.htm
oVE.FromDomain = "hexillion.com" '// The domain name of your machine
oVE.FromEmail = "HexValidEmail@hexillion.com" '// Email address of technical contact person
'// Optional step: set options
oVE.Options = oVE.Options or iif( bExtraText, hexVeOptionAllowExtraText, 0 ) _
or iif( bDomainDot, hexVeOptionDontRequireDomainDot, 0 ) _
or iif( bDomainLiterals, hexVeOptionDisallowDomainLiterals, 0 ) _
or iif( bMx, hexVeOptionRequireMx, 0 ) _
or iif( bVrfy, hexVeOptionTryVrfyAndExpn, 0 ) _
or iif( bCatchAll, hexVeOptionTestForCatchAll, 0 )
'// Optional step: set timeouts
oVE.Timeouts(hexVeTimeoutDnsTotal).Value = lTimeoutDns
oVE.Timeouts(hexVeTimeoutSmtpTotal).Value = lTimeoutSmtp
'// Do the validation
iRating = oVE.Validate( sAddr, iLevel )
%>
<h3><font face="Arial">Results</font></h3>
<table border="0" cellspacing="0" cellpadding="5">
<tr>
<td align="right" valign="baseline">confidence rating:</td>
<td valign="baseline"><tt><%= iRating & " - " & GetVeLevelString( iRating ) %></tt>
what this means</td>
</tr>
<tr>
<td align="right" valign="baseline">error:</td>
<td valign="baseline"><tt><%= GetVeErrorString( oVE.Error ) %></tt></td>
</tr>
</table>
<%
if len( oVE.LocalPart ) then
%>
<h3><font face="Arial">Address parts</font></h3>
<table border="0" cellspacing="0" cellpadding="5">
<tr>
<td align="right" valign="baseline">local part:</td>
<td valign="baseline"><tt><%= oVE.LocalPart %></tt></td>
</tr>
<tr>
<td align="right" valign="baseline">domain:</td>
<td valign="baseline"><tt><%= oVE.Domain %></tt></td>
</tr>
<tr>
<td align="right" valign="baseline">extra text:</td>
<td valign="baseline"><tt><%= oVE.ExtraText %></tt></td>
</tr>
</table>
<%
end if
if oVE.MxRecs.Count then
%>
<h3><font face="Arial">MX records</font></h3>
<table border="0" cellspacing="0" cellpadding="5">
<tr>
<td>preference</td>
<td>exchange</td>
<td>IP address (if included)</td>
</tr>
<%
dim oMxRec
for each oMxRec in oVE.MxRecs
WriteLn "<tr>"
WriteLn "<td align=""right""><tt>" & oMxRec.Preference & "</tt></td>"
WriteLn "<td><tt>" & oMxRec.Exchange & "</tt></td>"
WriteLn "<td><tt>[" & oVE.AddrToString( oMxRec.Addr ) & "]</tt></td>"
WriteLn "</tr>"
next
WriteLn "</table>"
end if
if len( oVE.SmtpSession ) then
WriteLn "<h3><font face=""Arial"">SMTP session</font></h3>"
WriteLn "<pre>" & server.HTMLEncode( oVE.SmtpSession ) & "</pre>"
end if
end if
set oVE = nothing
sub WriteLn( s )
Response.Write s & vbcrlf
end sub
function iif( b, v1, v2 )
if b then
iif = v1
else
iif = v2
end if
end function
%>
</body>
</html>