Version: 3.0.3.2
Securely send, receive, preview, edit, sign/verify, and encrypt/decrypt email messages in any .NET project. 
Frequently Asked Questions
Q: Can I send HTML email with PowerTCP Mail for .NET?
A: Yes. You can create a complete HTML email (from a source HTML file) with only a single line of code.
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: Do you support MIME in any format, not just what is sent in emails?
A: Yes. Our MessageStream object and its Parts collections also can be used for the encoding and decoding of HTTP POST commands, or any other MIME-formatted data structure. The architecture of the MessageStream and its supporting objects is completely abstract.
Back to Top
Q: Does your product have foreign-language support?
A: Yes. This supports all Microsoft language encoders for normal and HTML email, including the proper interpretation of foreign-language filenames and subject lines. Plus, support is also included for non-standard encodings that occur with certain mail clients.
Back to Top
Q: Does your product support streaming operation?
A: Yes. This product is architected on the basis of streams and almost anything can be represented as a stream.
Back to Top
Q: Extensive designer support? What does this mean?
A: We provide extensive support to help you design, develop, and debug quicker and easier than ever before. For example, we provide full Help 2.0 documentation (including tutorials) which integrates directly into Visual Studio .NET. Also, we provide integrated Editor Forms which can be used for protocol testing.
Back to Top
Q: How is PowerTCP Mail for .NET different than PowerTCP Secure Mail for .NET?
A:

PowerTCP Secure Mail for .NET was the secure version of PowerTCP Mail for .NET.  However, the secure features of PowerTCP Secure Mail for .NET have now been incorporated into PowerTCP Mail for .NET, and PowerTCP Secure Mail for .NET is no longer available.


Back to Top
Q: How will I be affected if I have installed Windows XP SP2?
A: Microsoft Windows XP SP2 is a large update to the Windows XP operating system. The focus of this update is to tighten system security. One of those features is the built-in firewall. By default, Microsoft will turn on the firewall and block all applications from communicating over the Internet. As most PowerTCP products are designed for building Internet applications, those applications may be blocked from accessing the network. The solution to this problem, as it is for any application that needs to access the network, is to grant permission using Microsoft’s configuration utility. Instructions on using the Microsoft firewall are at http://www.microsoft.com/windowsxp/using/security/internet/sp2_wfintro.mspx, and more information about manual network security configuration is available by reading Microsoft Knowledge Base Article - 842242 . Also, Microsoft will disallow using ActiveX controls in Internet Explorer by default. It your web application uses PowerTCP ActiveX controls in IE, your users will have to manually adjust their security settings to allow ActiveX usage. If you find any other problems with SP2 and PowerTCP products, please contact Dart support at support@dart.com.
Back to Top
Q: I am using the Imap component and when I try to delete a mailbox on my server I always get a 'mailbox in use' error. Why is this happening?
A: Because IMAP servers can react differently to action being taken on a mailbox if that server believes that the mailbox is currently in use. The mailbox will be considered "In Use" if that mailbox is set using the CurrentMailbox property. If you have a server that refuses to process a command because it considers a mailbox to be in use, then set the CurrentMailbox property to another mailbox or the root level and perform the delete. For example:

imap1.Login("server", "username", "password");

Mailbox box = imap1.Mailboxes["Sent Items"];

Mailbox box2 = imap1.Mailboxes["test box"];

imap1.CurrentMailbox = box;

ImapResponse Res = box2.Delete();


Back to Top
Q: I don't know anything about email protocols, but I need to send/receive email in my application. Will I be able to use this product?
A: Absolutely. We designed this product with unprecedented power to appeal to the advanced Internet developers, while still retaining easy-to-use features for less advanced Internet developers. These easy-to-use features include an intuitive interface, extensive documentation with step-by-step tutorials (for both CSharp and Visual Basic .NET), integrated designer support, and a dozen full applications (with source code) demonstrating all aspects of sending and receiving mail.
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: I put code in my application so that I call I call Object.Abort in my Form_Closing event but the application process never goes away. How do I do it so that the application disappears from the Task Ma
A:

Since the component operation is running on it's own thread, it's important to keep the owner thread around long enough for the worker thread to terminate. Here is what we recommend:

1) On the main form, declare two variables:

Dim Working As Boolean = False
Dim Killing As Boolean = False


2) In the Form_Closing, put the following code:

If Working Then
    If (MessageBox.Show(Me, "Do you wish to abort the operation?", APP_NAME, 
    MessageBoxButtons.YesNo, MessageBoxIcon.Question) = DialogResult.Yes) Then
        Killing = True
        Object.Abort()  'This would be the instance of the component -ex: Archive1.Abort()
    End If
    e.Cancel = True
End If


3) Prior to calling the component operation, set Working to True

4) After the component operation is complete add the following code:

Working = false
If Killing then Me.Close()


 


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. Products using native .NET classes will generate Intermediate Language (IL) code that will run under UNIX or LINUX once those run-time environments are developed. In addition, your 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. Did I just say that programmers and QA programs aren’t perfect? Oops.
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.
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: What is the minimum I need to do to send an email?
A: While our goal was to make PowerTCP Mail for .NET and PowerTCP Secure Mail for .NET the most powerful email components on the market, we also provided easy-to-use helper methods. As a result you can send a message with a single line of code.
Back to Top
Q: I don’t know the first thing about SSL. Can you give me an overview that relates it to your product?
A: Basically, once a TCP connection is established, the server identifies itself with a special digital certificate that identifies it as “trustedE Optionally, the server may then require the client to identify itself with a digital certificate. If the respective certificates “pass musterE then all data is encrypted/decrypted using public key technology. PowerTCP makes all this as transparent as possible, while giving you the greatest control over accepting/rejecting certificates.
Back to Top
Q: I exported a certificate from my UNIX operating system to use with your product in SSL mode, but it doesn't seem to work.
A: Our implementation requires that a certificate be properly imported into a valid Microsoft Certificate Store. If you are importing a certificate that was created from a non-MS source (such as OpenSSL), please be sure that you export the certificate properly before attempting to import it into an MS Cert store. Check the docs for whatever SSL system you are using for this info. Also, make sure that when you export your certificate, regardless of your SSL library, that it includes the private key. A certificate that is exported without a private key can not be used as a valid certificate when imported into the Microsoft Certificate Store.
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