Version: 1.0.4.0
Add comprehensive email address validation to any .NET application or service.
Q: Why do I need Email Validation for .NET?
A: If you keep a list of email addresses, or you want to validate email addresses on your website, you need this product. For some potential uses, please see:

http://www.dart.com/ptmlvnet_uses.aspx
Back to Top
Q: Will Email Validation for .NET work in ASP.NET?
A: Yes, and the Validation installation includes an ASP.NET sample in VB.NET and C#. The sample is not live on our website due to its potential for abuse.
Back to Top
Q: What exactly does the email Validator do?
A: The Validator checks email addresses over a series of levels to a level specified by the user. If the validation fails at any step along the way, it stops and reports an error. In brief, the levels are:

Syntax. The address is formatted correctly.
Blacklist. Check for known bad email addresses
Whitelist. Check for known good email addresses
Greenlist. Check for addresses with domains that confirm all addresses
DnsLookup. Check for mail exchange servers (MX records) associated with the email address
SmtpConnect. Attempt to connect to these mail servers
SmtpRecipient. Query these servers for the existence of the email address’s mailbox
Back to Top
Q: How can I make email validation go faster?
A: The validation process can be a lengthy one, particularly when validating to the levels that require SMTP communication. There are some performance-enhancing options that can be utilized for large lists; specifically, use of the white and black lists, the domain cache, and the test account (greenlist). Also, the timeout properties (Validator.Dns.Timeout, Validator.Smtp.ConnectTimeout, Validator.Smtp.ReceiveTimeout) can be set to lower values to timeout faster when responses are not forthcoming. In addition, when validating lists, the component will validate all addresses with the same domain on the same SMTP connection, saving multiple connection costs.
Back to Top
Q: How can I prevent repeat checks of duplicate addresses in a list?
A: Email addresses can be added to the white and black lists on the fly, so if they do appear again in your list, they will immediately be processed without the need for redundant Internet communication.
Back to Top
Q: Is email validation 100% reliable?
A: Email validation cannot be 100% reliable, because it relies on information provided by mail servers. There are some mail servers that will confirm the existence of any email address, including bad ones, and the Validator component has a feature called the “greenlist” that will inform you of these servers. This product is as accurate as possible without actually sending email messages to the recipients in your list.
Back to Top
Q: What is the greenlist?
A: The greenlist is a list of domains that return positive responses to any email address queries, even bad ones. If set, the Validator will query mail servers for a bogus test account before any actual accounts in the list. If the server affirms the account, the domain is added to the greenlist, and any addresses with this domain are validated without further communication with the server.
Back to Top
Q: Can I get the MX Records for an email address?
A: The Validator includes a Dns property, which encapsulates a fully functional Dns component. To get the MX Records of a particular email address, simply utilize its GetMailHosts or BeginGetMailHosts method calls.
Back to Top
Q: Do samples ship with the product?
A: Absolutely. We ship complete finished apps (not just simple technology demonstrations) in both CSharp and Visual Basic .NET as both Windows Applications and Web Applications.
Back to Top
Q: I just upgraded to the latest version of PowerTCP XXX for .NET, now my Delphi 8 app does not compile. I get an error about a manifest declaration.
A: Delphi caches information about the component when you insert it. Close Delphi and delete any Dart.PowerTCP.xxx.* files that exist, then reopen and rebuild the project.
Back to Top
Q: Is the free trial a 'full version'?
A: Yes. Your trial download is identical to the purchased product. The only difference is the trial download will only work for 30 days (in the case of ActiveX products) or will work for 7 days between each rebuild (for .NET products).
Back to Top
Q: What do I need to get started?
A: At a minimum, you need the .NET Framework installed. We also highly recommend using Visual Studio .NET as we provide extensive designer support for this product. Once you have these, all you have to do is download a free trial of PowerTCP Mail for .NET.
Back to Top
Q: I understand you use 100% managed code. Why is that a good thing?
A: Portability to other (future) .NET environments is one of the biggest benefits. In addition, you will find that 100% managed code will demonstrate fewer maintenance issues in the future. There is simply less to go wrong when programming mistakes are made.
Back to Top
Q: Why do I see an 'Attempting to deserialize an empty stream' exception when I build my VS.NET 2008 Website?
A: Websites create an App_Licenses.dll for component licensing which must be distributed with the application.  Due to an apparent VS.NET 2008 bug, this dll is faulty when created during compilation on a 64 bit Operating System.  To work-around the problem, the App_Licenses dll in the 2008 Website can be replaced. 

Options include:
a) Compile a 2005 WebSite on the same (licensed) machine using the same controls/components
b) Compile a 2005 or 2008 WebSite on a 32 bit OS machine, provided this machine is also licensed (Dart Developer licenses allow installation on up to two machines)

Replace the faulty App_Licenses.dll with the resulting dll from one of the options above, and the Website should build and deploy without issue.  Do not delete the new dll, or VS.NET will again create a new faulty one in its place.


Back to Top