PowerTCP SSL for ActiveX

from $999.00
Available Platforms

Use the same security protocol that protects secure transactions world-wide. Secure Socket Layer (SSL) authentication and encryption will ensure your data stays private as it travels across the public network.

Features

  • IPv6 support
  • Automatically authenticates and encrypts/decrypts data sent and received over the Internet or your intranet using SSL2, SSL3, PCT or TLS
  • Secure ActiveX COM controls for TCP, TCP Server, POP3, FTP, and FTP Server
  • Non-secure TCP and Daemon controls are also included for building proxy server applications
  • Write HTTP/S applications that provide client-side authentication WITHOUT displaying an annoying dialog asking the user to select his security certificate
  • CertificateList ActiveX control makes it easy to manage digital certificates
  • Certificate COM object exposes the details of digital certificates sent and received
  • CertificateStore COM object exposes collections of installed Certificate objects for management purposes for both the Current User and Local Machine, enabling the construction of Secure Servers that can also run as Services
  • Properties and events for certificate authentication give you complete control over what you will accept or reject
  • Can be used in a multi-threaded environment.

Security

  • TLS 1.2 and 1.1 support
  • Supports client-side AND server-side authentication
  • Capable of SSL over FTP through a Firewall
  • Support for all major SSL over FTP standards and configurable to other non-standard implementations!
  • Supports secure implementations of Globalscape(TM), WS_FTP(TM), and SERV_U
  • Compatible with common UNIX libraries such as OpenSSL and Certicom Plus(TM)

Samples and Documentation

  • Wrapper classes included for convenient integration into Visual C++
  • Supports COM+ Component Services
  • 64 bit support
  • Includes a royalty-free license

 

    Included with PowerTCP SSL for ActiveX

    • 22 Controls/Objects.
    • 25 sample projects with source.
    • Full MS Help 1.3 Documentation, including examples.
    • Free Introductory Support.

     

    Component Description
    CertificateList Control Presents the user with an interface to select certificates.
    Daemon Control Accepts TCP connections.
    Ftp Control Copies files between a local client and an FTP server that supports the SSL2.0/30, TLS or PCT security protocols.
    SecureFtpServer Control Use to build into your application a fully-functioning standalone or custom secure FTP server.
    Pop Control Use to retrieve mail from a POP3 server that supports the SSL 2.0/3.0, TLS or PCT security protocols.
    SecureServer Control Use to quickly build custom server applications that use authentication and encryption
    SecureTcp Control Manages streams of data that require security.
    Service Control Use to make your application into an NT Service.
    Certificate Object Use to access information about a digital certificate.
    Certificates Object Collection of Certificate Objects.
    CertificateStore Object Use to gain access to a store of certificates on the local system.
    Children Object Provides a collection of SecureTCP Objects that have been dynamically created.
    DartStream Object Use the DartStream Object to manage a streamed buffer to/from memory or a file.
    FtpVariable Object Use to store and manage variables.
    FtpVariables Object Collection of FtpVariable Objects.
    ListEntry Object Provides easy access to file information provided by an FTP listing.
    ListEntries Object Collection of ListEntry Objects.
    Message Object Transforms any Internet mail message into an object that you can easily manipulate with code. Also provides stand-alone MIME encoding and decoding.
    Request Object Use to obtain information about the current request.
    Response Object Use to manage information sent back to the client.
    Session Object Use to manage information describing a client session.
    Sessions Object Use the Sessions Object to manage multiple Session Objects.
    User Object Use to obtain information about the current user and to indicate that a client has been authenticated.

      

    Supported Environments

    Operating Systems*: Server 2008, 2012, Windows 7, Windows 8, Windows 10, Server 2016

    PowerTCP SSL for ActiveX can be used in the following development environments:

    • Visual Basic
    • Visual C++
    • FoxPro
    • ASP
    • VBScript (wscript, cscript, etc)
    • MS Office VBA

     

    Visual Basic
    Looking to integrate SSL into Visual Basic? PowerTCP SSL for ActiveX contains 10 full sample projects for Visual Basic, including a full-blown secure FTP Client, FTP Server, POP Client, and Web Server!

     

    Visual C++
    PowerTCP SSL for ActiveX includes C++ wrapper classes to make SSL integration into C++ even easier. In addition, 4 full sample projects are included.

    Code Examples

    Sample Projects Included

    The PowerTCP SSL for ActiveX samples included with the installation are fully working applications with complete source code.
    Sample Name Sample Description Environments
    FTP Client Demonstrates a simple FTP client that can be used with the Secure FTP Server sample. VB6, VC++ (VC6)
    GetSite Uses the Mget method to retrieve an entire directory tree. VB6, VC++ (VC6)
    PutSite Uses the MPut method to store an entire directory tree. VB6, VC++ (VC6)
    Secure FTP Server Uses the SecureFtpServer Control to demonstrate a simple Secure FTP server. Use it with the Secure FTP Client. VB6, VC++ (VC6)
    Secure Echo Server Demonstrates a simple secure Echo server. VB6, VC++ (VC6)
    Secure TCP Client Uses the SecureTcp Control to make SSL connections to any secure port. VB6, VC++ (VC6, VS2012)
    Secure Web Alive A secure version of the Web Alive sample which compares the download performance of any 2 web pages. Useful for comparing the relative performance of mirrored Web Servers. VB 6
    POP Client Demonstrates a simple POP mail client that can be used with any POP server that supports secure communications. VB6, VC++ (VC6, VS2012)

     

    The following is a list of public releases for all components shipped with PowerTCP SSL for ActiveX (Latest Release 2017-12-07)

     

    dartsecure2.dll dartcertificate.dll dartftp.dll dartftputil.dll
    dartmail.dll dartsecureftp.dll dartsecureftpserver.dll dartsecuremail.dll
    dartserver.dll dartservice.dll dartsock.dll dartutil.dll dartzip.dll

     

     

    dartsecure2.dll

    Current Version: 2.2.3.0

     

     

    2.2.3.0 Released: 2017-12-07


     

    • Updated RemotePort and LocalPort properties to return the correct values when using IPv6.

     

     

    2.2.2.0 Released: 2017-11-09


     

    Product fixes in this release:

    • Corrected an incompatibility in SecureServer.Listen

     

     

    2.2.1.1 Released: 2017-10-26


     

    • Now includes 64-bit dlls.
    • Support for IPv6 has been added.
    • Explicit TLS 1.1 and TLS 1.2 support has been added.

     

     

    2.2.0.0 Released: 2015-11-12


     

    • The ProtocolConstants enumeration has been restructured to behave as a flag enumeration in order to better support specifying specific versions of secure protocols.
    • Support for TLS 1.1 and TLS 1.2 added on supported operating systems.

     

     

    2.1.5.0 Released: 2013-05-24


     

    • FTP over SSL and POP over SSL functionality are now provided by our PowerTCP FTP for ActiveX and PowerTCP Mail for ActiveX controls. As such, references to the Secure Pop and Secure Ftp dlls should be replaced by references to DartFtp.dll and DartMail.dll respectively.

     

    Product fixes in this release:

    • Segmented SSL negotiation packets will no longer cause a timeout to occur. (4586)

     

     

    2.1.4.0 Released: 2013-05-10


     

    Product fixes in this release:

    • SSL2 negotiation and SSL negotiation on Windows 8 now work as expected. (5683, 5691)

     

     

    2.1.2.0 Released: 2012-07-10


     

    • There are now separate "Trial" and "Licensed" versions of the dll. Trial dlls are not for deployment and will only function on machines on which a trial version of the product has been installed.

     

     

    2.1.1.0 Released: 2012-02-09


     

    Product fixes in this release:

    • Fixed condition under which the ValidSignature argument in the Certificate event would incorrectly be true.

     

     

    2.1.0.1 Released: 2010-03-26


     

    • Now functions on all Data Execution Protection (DEP) enabled systems.
    • No longer vulnerable to attacks outlined in Microsoft Security Bulletin MS09-035 (http://www.microsoft.com/technet/security/bulletin/MS09-035.mspx).

     

     

    dartcertificate.dll

    Current Version: 2.11.1.0

     

     

    2.11.1.0 Released: 2017-10-26


     

    • Now includes 64-bit dlls.

     

     

    2.11.0.0 Released: 2015-11-13


     

    • Version change.

     

     

    2.10.5.0 Released: 2013-05-24


     

    Product fixes in this release:

    • Programmatically setting the SelectedIndex of the CertificateList control will now correctly highlight the selected certificate. (5492)
    • The CertificateList control now only allows one selection at a time. (5493)

     

     

    2.10.4.0 Released: 2013-05-10


     

    Product fixes in this release:

    • Resolved a com registration error.

     

     

    2.10.2.0 Released: 2012-07-10


     

    • There are now separate "Trial" and "Licensed" versions of the dll. Trial dlls are not for deployment and will only function on machines on which a trial version of the product has been installed.

     

     

    2.10.1.1 Released: 2012-02-09


     

    Product fixes in this release:

    • Fixed CertificateList filter so that all certificates matching the criteria appear. (5495)

     

     

    2.10.0.1 Released: 2010-03-26


     

    • Now functions on all Data Execution Protection (DEP) enabled systems.
    • No longer vulnerable to attacks outlined in Microsoft Security Bulletin MS09-035 (http://www.microsoft.com/technet/security/bulletin/MS09-035.mspx).

     

     

    dartftp.dll

    Current Version: 2.2.2.0

     

     

    2.2.2.0 Released: 2017-12-07


     

    • Updated RemotePort and LocalPort properties to return the correct values when using IPv6.

     

     

    2.2.1.0 Released: 2017-11-14


     

    • Now includes 64-bit dlls.
    • Support for IPv6 has been added.

     

     

    2.2.0.0 Released: 2017-04-27


     

    • Revised ProtocolConstants enumeration to provide explicit support for TLS 1.1 and TLS 1.2.
    • Reformatting and updates, to help documentation

     

     

    2.1.4.0 Released: 2013-05-24


     

    Product fixes in this release:

    • The atFirewallReady authentication type constant has been removed due to obsolescence.
    • Inclusion of DartSecure2.dll version: 2.1.5.0

     

     

    2.1.3.0 Released: 2013-05-10


     

    Product fixes in this release:

    • Improved operation when connecting to servers using implicit or explicit security.
    • Resolved a Com registration error.
    • Automatic SSL negotiation after a successful AUTH TLS-P command now occurs. (4561)

     

     

    2.1.1.0 Released: 2012-07-10


     

    • There are now separate "Trial" and "Licensed" versions of the dll. Trial dlls are not for deployment and will only function on machines on which a trial version of the product has been installed.

     

     

    2.1.0.1 Released: 2010-03-26


     

    • Now functions on all Data Execution Protection (DEP) enabled systems.
    • No longer vulnerable to attacks outlined in Microsoft Security Bulletin MS09-035 (http://www.microsoft.com/technet/security/bulletin/MS09-035.mspx).

     

    Product fixes in this release:

    • Uploading data in memory (instead of a file on disk) now works as expected. (4786)
    • Addressed a fatal exception condition when using the Command method with a Timeout of 0. (4929)
    • Explicitly secure data connections no longer timeout with vsFTPd servers. (5114)
    • SecretKey property is no longer vulnerable to buffer overflow. (5148)

     

     

    dartftputil.dll

    Current Version: 3.2.5.0

     

     

    3.2.5.0 Released: 2017-11-13


     

    • Now includes 64-bit dlls.

     

     

    3.2.4.1 Released: 2013-05-17


     

    Product fixes in this release:

    • Resolved a Com registration error.

     

     

    3.2.3.0 Released: 2012-07-10


     

    • There are now separate "Trial" and "Licensed" versions of the dll. Trial dlls are not for deployment and will only function on machines on which a trial version of the product has been installed.

     

     

    3.2.1.0 Released: 2011-01-25


     

    • Number update to match product version.

     

     

    3.2.0.0 Released: 2010-07-26


     

    • Now functions on all Data Execution Protection (DEP) enabled systems.
    • No longer vulnerable to attacks outlined in Microsoft Security Bulletin MS09-035 (http://www.microsoft.com/technet/security/bulletin/MS09-035.mspx).

     

     

    dartmail.dll

    Current Version: 2.13.1.0

     

     

    2.13.1.0 Released: 2017-12-07


     

    • Update to version number.

     

     

    2.13.0.0 Released: 2017-10-26


     

    • Now includes 64-bit dlls.
    • Support for IPv6 has been added.
    • Explicit TLS 1.1 and TLS 1.2 has been added.

     

    Product fixes in this release:

    • BOM bytes are no longer left in decoded text intermittently. (5761)

     

     

    2.12.0.0 Released: 2015-11-12


     

    • TLS 1.1 and TLS 1.2 support has been added.

     

    Product fixes in this release:

    • Trailing spaces will no longer be dropped when filenames are folded over more than one line. (5420)
    • The 998 character per line limit for the message body will now be correctly enforced. (5476)
    • Content-Disposition file name headers will now be used over Content-Type name headers. (5731)
    • Whitespace character between encoded words will now be removed as expected. (5732)
    • None authentication will now work as expected. (5743)
    • DisplayName are now taken into account when generating sending RCPT TO headers using SMTP. (5744)
    • Updated the default SMTP server port from 25 to the submission port 587 to conform with RFC2476. (5752)

     

     

    2.11.4.0 Released: 2013-07-09


     

    Product fixes in this release:

    • Inclusion of DartSecure2.dll version: 2.1.5.0
    • The PLAIN authentication mechanism will now be selected and used when it is available in the SMTP server's capabilities. (5718, 5719)

     

     

    2.11.3.0 Released: 2013-05-07


     

    Product fixes in this release:

    • Resolved a com registration error.
    • Resolved an issue where attachment file names could be unfolded incorrectly. (5420)

     

     

    2.11.1.0 Released: 2012-07-10


     

    There are now separate "Trial" and "Licensed" versions of the dll. Trial dlls are not for deployment and will only function on machines on which a trial version of the product has been installed.

     

     

    2.11.0.0 Released: 2010-10-26


     

    Product fixes in this release:

    • Fixed licensing problem with the new CertificateList and CertificateStore controls.

     

     

    2.10.0.15 Released: 2010-06-25


     

    • Now functions on all Data Execution Protection (DEP) enabled systems.
    • No longer vulnerable to attacks outlined in Microsoft Security Bulletin MS09-035 (http://www.microsoft.com/technet/security/bulletin/MS09-035.mspx).
    • PowerTCP Mail for ActiveX now supports SSL! Implicit and Explicit security modes.
    • BinHex attachment encoding and decoding now supported.

     

    Product fixes in this release:

    • Fixed issue with inserting a Part to the end of a Parts collection (occurred only if the index was specified). (4632)
    • Fixed a memory leak in the Message object. (4931)
    • Store method with the msgDecoded option no longer removes the Date and From headers. (5002)
    • Fixed decoding issue when MIME boundaries begin with a space. (5003)

     

     

    2.9.4.1 Released: 2008-06-27


     

    Product fixes in this release:

    • Corrected problem introduced in 2.9.4.0, in which the last address in the TO and CC collections would be removed. (4768)

     

     

    2.9.4.0 Released: 2008-05-16


     

    • Smtp.Verify now provides flexibility regarding the MAIL FROM address. The control will now use the Smtp.From address if it set. If this property is not set, the address being verified will be used.

     

    Product fixes in this release:

    • Now support atypical messages which define a second, malformed MIME boundary. (4290)
    • Increased SMTP HELO support for machines with Unicode names. (4631)
    • Documentation for the Message.Encode property has been clarified. It is not possible to encode to a string data type. (4640)
    • Fixed an Imap memory problem caused by messages with corrupt attachment names. (4661)

     

     

    dartsecureftp.dll

    Current Version: 2.9.0.0

     

     


    2.9.0.0 Released: 2012-07-10


     

    • DartSecureFtp.dll is no longer distributed. The Ftp control (which support secure connections) has replaced the SecureFtp control.

     

     

    dartsecureftpserver.dll

    Current Version: 2.9.2.1

     

     


    2.9.2.1 Released: 2017-11-13


     

    • Now includes 64-bit dlls.
    • Support for IPv6 has been added.
    • Explicit TLS 1.1 and TLS 1.2 has been added.

     

     

    2.9.1.1 Released: 2013-05-24


     

    Product fixes in this release:

    • The atFirewallReady authentication type constant has been removed due to obsolescence.
    • Storing a file with STOU now works correctly. (4291, 5703, 5705)
    • Setting the Status response to 400 or higher in the Login event will now cause the Session.User property to be cleared, disallowing access to the server. (4717)
    • Command event parameters are now populated even if a user is not authorized to allow processing of command such as PBSZ and PROT before authorization. (5698)

     

     

    2.9.0.0 Released: 2012-07-10


     

    • There are now separate "Trial" and "Licensed" versions of the dll. Trial dlls are not for deployment and will only function on machines on which a trial version of the product has been installed.

     

     

    dartsecuremail.dll

    Current Version: 2.9.0.0

     

     

    2.9.0.0 Released: 2012-07-10


     

    • DartSecureMail.dll is no longer distributed. The Pop control (which support secure connections) has replaced the SecurePop control.

     

     

    dartserver.dll

    Current Version: 3.2.5.0

     

     

    3.2.5.0 Released: 2013-05-17


     

    Product fixes in this release:

    • Resolved a Com registration error.
    • Resolved an issue that could cause a crash when using the Server control as a proxy. (5695)

     

     

    3.2.3.0 Released: 2012-07-10


     

    • There are now separate "Trial" and "Licensed" versions of the dll. Trial dlls are not for deployment and will only function on machines on which a trial version of the product has been installed.

     

     

    3.2.2.0 Released: 2012-02-09


     

    • No changes from 3.2.1.0.

     

     

    3.2.1.0 Released: 2011-01-25


     

    • Number update to match product version.

     

     

    3.2.0.0 Released: 2010-07-26


     

    • No longer vulnerable to attacks outlined in Microsoft Security Bulletin MS09-035 (http://www.microsoft.com/technet/security/bulletin/MS09-035.mspx).
    • Now functions on all Data Execution Protection (DEP) enabled systems.

     

     

    dartservice.dll

    Current Version: 3.2.6.1

     

     

    3.2.6.1 Released: 2017-11-13


     

    • Now includes 64-bit dlls.

     

     

    3.2.5.1 Released: 2013-05-17


     

    Product fixes in this release:

    • Resolved a Com registration error.
    • The Service control now functions correctly on 64-bit operating systems. (4764)

     

     

    3.2.3.0 Released: 2012-07-10


     

    • There are now separate "Trial" and "Licensed" versions of the dll. Trial dlls are not for deployment and will only function on machines on which a trial version of the product has been installed.

     

     

    3.2.2.0 Released: 2012-02-09


     

    • No changes from 3.2.1.0.

     

     

    3.2.1.0 Released: 2011-01-25


     

    • Number update to match product version.

     

     

    3.2.0.0 Released: 2010-07-26


     

    • Now functions on all Data Execution Protection (DEP) enabled systems.
    • No longer vulnerable to attacks outlined in Microsoft Security Bulletin MS09-035 (http://www.microsoft.com/technet/security/bulletin/MS09-035.mspx).

     

     

    dartsock.dll

    Current Version: 2.12.0.0

     

     

    2.12.0.0 Released: 2017-12-07


     

    • Version change for installation kit.

     

     

    2.11.1.0 Released: 2017-10-26


     

    • Now includes 64-bit dlls.
    • Support for IPv6 has been added.

     

     

    2.11.0.0 Released: 2015-11-13


     

    • Version change.

     

     

    2.10.2.1 Released: 2013-05-08


     

    Product fixes in this release:

    • Resolved a com registration error.
    • Resolved an issue where DartStrings would be empty when reading and splitting a large file with delimiters. (5117)
    • Resolved a memory leak when calling the Udp.Receive(DartStream) overload. (5536)

     

     

    2.10.0.1 Released: 2012-07-10


     

    • There are now separate "Trial" and "Licensed" versions of the dll. Trial dlls are not for deployment and will only function on machines on which a trial version of the product has been installed.

     

     

    2.9.1.0 Released: 2012-02-09


     

    • No changes from 2.9.0.3.

     

     

    2.9.0.3 Released: 2010-10-26


     

    • CertificateList and CertificateStore are now licensed controls in PowerTCP Mail for ActiveX.

     

     

    2.9.0.2 Released: 2010-07-26


     

    Product fixes in this release:

    • Fixed problem getting DartStrings.All when the collection is empty.

     

     

    2.9.0.1 Released: 2010-04-28


     

    • Now functions on all Data Execution Protection (DEP) enabled systems.
    • No longer vulnerable to attacks outlined in Microsoft Security Bulletin MS09-035 (http://www.microsoft.com/technet/security/bulletin/MS09-035.mspx).

     

     

    2.9.0.0 Released: 2010-02-11


     

    Product fixes in this release:

    • The StartAfter parameter of DartStrings.Find can now be greater than 65535. (4707)
    • Ras Phonebook entries can now have names with multibyte characters. (4875)

     

     

    2.8.5.0 Released: 2008-03-19


     

    Product fixes in this release:

    • It is now possible to edit and add to Ras PhoneBooks on Vista machines. (4225)
    • Two running instances of the same application using the Ping control are now completely independent. (4583)

     

     

    2.8.3.27 Released: 2008-02-04


     

    Product fixes in this release:

    • DartStrings.Remove now works with a string parameter. (4262)
    • NoDelay and KeepAlive properties can now be set to false on Vista machines. (4351)
    • DartStrings.Add now works when adding strings to the end of the collection by specifying an index parameter. (4632)

     

     

    dartutil.dll

    Current Version: 2.12.0.0

     

     

    2.12.0.0 Released: 2017-12-07


     

    • Version change for Winsock installation.

     

     

    2.10.1.0 Released: 2017-10-26


     

    • Now includes 64-bit dlls.

     

     

    2.10.0.0 Released: 2015-11-12


     

    Product fixes in this release:

    • No bug fixes, version change.

     

     

    2.9.3.0 Released: 2013-05-17


     

    Product fixes in this release:

    • Resolved a Com registration error.

     

     

    2.9.2.0 Released: 2012-07-10


     

    • There are now separate "Trial" and "Licensed" versions of the dll. Trial dlls are not for deployment and will only function on machines on which a trial version of the product has been installed.

     

     

    2.9.1.0 Released: 2012-02-09


     

    • No changes from 2.9.0.1.

     

     

    2.9.0.1 Released: 2010-04-28


     

    • Now functions on all Data Execution Protection (DEP) enabled systems.
    • No longer vulnerable to attacks outlined in Microsoft Security Bulletin MS09-035 (http://www.microsoft.com/technet/security/bulletin/MS09-035.mspx).

     

     

    2.8.5.0 Released: 2008-03-19


     

    Product fixes in this release:

    • Two running instances of the same application using the Ping control are now completely independent. (4583)

     

     

    dartzip.dll

    Current Version: 1.9.5.0

     

     

    1.9.5.0 Released: 2013-07-01


     

    Product fixes in this release:

    • Resolved a com registration error.
    • Zipping and spanning while using encryption will now produce compliant zip archives. (5336)
    • Calling Unzip on a FileStore object after adding files by calling FileStore.Load or FileStore.Add will no longer result in 0 length files. (5649)

     

     

    1.9.3.0 Released: 2012-07-10


     

    • There are now separate "Trial" and "Licensed" versions of the dll. Trial dlls are not for deployment and will only function on machines on which a trial version of the product has been installed.

     

     

    1.9.2.0 Released: 2010-09-07


     

    Product fixes in this release:

    • Fixed problem extracting to streams introduced in 1.9.1.0. (5340)

     

     

    1.9.1.0 Released: 2010-08-16


     

    Product fixes in this release:

    • When an archive is loaded and zipped with a new name, the original archive is left untouched. (4913)
    • Timestamps are preserved for extracted files. (5311)

     

     

    1.9.0.0 Released: 2010-02-11


     

    • The Self-Extract dialog was updated with a cleaner look.
    • The product now supports Winzip-compatible AES encryption, in addition to the Dart proprietary AES encryption.
    • Zip ActiveX is no longer vulnerable to attacks outlined in Microsoft Security Bulletin MS09-035 (http://www.microsoft.com/technet/security/bulletin/MS09-035.mspx).
    • Zip ActiveX should now function on all Data Execution Protection (DEP) enabled systems.

     

    Product fixes in this release:

    • File attributes such as read-only are now preserved when extracted from the FileStore. (4423)
    • The archive comment functionality has been fixed. (5069)
    • Adding DartStreams with Filenames now works correctly. (5180)
    • Write errors will no longer occur if a file is accessed by another system process during extraction. (5195)

     

    PowerTCP SSL for ActiveX Features

     

    SecureTcp ActiveX Control

     

    Use the SecureTcp control to automatically authenticate and encrypt/decrypt all data sent and received over a TCP connection using SSL2, SSL3, PCT, and TLS. Features include:

     

    • Select SSL 2.0, SSL 3.0, PCT, TLS or unencrypted TCP communications.
    • Customize certificate acceptance or rejection.
    • Client authentication fully supported.
    • TCP Send method sends data to the server.
    • TCP Receive method receives all available data.
    • TCP Search Method supports variable length records and line processing, eliminating the need to search for termination characters and simplifying buffer management.
    • TCP Fill Method supports fixed length binary records, simplifying buffer management and reducing the code needed to send and receive binary structures.
    • Proxy support, including Socks 4 and 5

     

     

    Development Environments

    • Visual Studio .NET (.NET Framework)
    • Visual Basic (VB)
    • Visual C++ (VC++)
    • FoxPro
    • PowerBuilder
    • Delphi
    • C++ Builder
    • ASP
    • Office 97/2000

     

     

    Interface

    Public Properties
    Blocked A True value indicates the control is currently executing a blocking method (Timeout is greater than 0), which has neither completed nor timed out with a ptTimeout error.
    Certificate Certificate Object to use when authenticating to the remote host.
    ClientAuthentication Applies to server operation only.
    KeepAlive When set to True, the KEEPALIVE socket option is set to monitor dropped connections. This option can only be set when the State property is tcpConnected.
    LocalAddress Returns the address of the local host in dot notation (for example, nnn.nnn.nnn.nnn). When not connected, it returns an empty string.
    LocalPort Returns the port number that the socket is bound to. When not connected, it returns 0.
    NoDelay When True, the NODELAY socket option is set to defeat Nagle's algorithm
    Protocol Specifies the security protocol used.
    ProxyHost Specifies the name or address of the proxy server that requests are to be routed through.
    ProxyPassword Password to be sent on all requests through a proxy server that requires authentication.
    ProxyPort Specifies the port used by proxy server that requests are to be routed through.
    ProxyType The type of proxy server used for this connection.
    ProxyUsername Username to be sent on all requests through a proxy server that requires authentication.
    ReceiveBufferCount Checks for the existence of data without removing it.
    ReceiveBufferSize Number of bytes the system has for buffering incoming data
    Ref Stores a reference to another object, data type, or value.
    RemoteAddress Returns the address of the remote host in dot notation (i.e. nnn.nnn.nnn.nnn) when the State property is tcpConnected.
    RemotePort Returns the port number of the remote host when the State property is tcpConnected.
    ReuseAddress When True, the REUSEADDR socket option is set to accept duplicate use of the same LocalAddress / LocalPort pair (these are optional parameters of the Connect and Listen methods).
    Security Sets the security level during communication.
    SendBufferCount When the Send method is used, some data may be stored in a buffer and later submitted to the system. The Send event fires to indicate that the system has accepted the submitted data.
    SendBufferSize Number of bytes the system uses for buffering outgoing data.
    Socket System identifier assigned to the TCP connection. It is normally used to assume management of a socket accepted from the Daemon Control.
    State Provides status information to the user interface. The State event fires to signal that this property has changed.
    Timeout Controls the blocking behavior of methods that can be used in blocking and non-blocking ways.
    Public Methods
    Abort Abort any blocking method and release all system resources.
    About Show the About Box.
    ClearCertificate Clears the Certificate object contained in the Certificate property.
    Close Close the session and release all system resources. A single control can be used for many connections, one after the other.
    Connect Establish a secure connection.
    Fill Use this method when you know exactly how many bytes or characters you want from the TCP stream.
    Receive Receive an arbitrary amount of data. The specified String or Byte array is filled with bytes from the remote host.
    Search Receive data up to and including a terminating sequence.
    Send Send data after a connection is established.
    Trace Start or stop the accumulation of trace or debug data. Once started, this method accumulates data until it is turned off.
    Public Events
    Authenticate Fires when the remote host has sent a certificate to be authenticated.
    Certificate Fires when the remote host is requesting a certificate and the Certificate property is not set to a valid Certificate Object.
    Error Fires when an error condition occurs.
    Receive Fires when ReceiveBufferCount changes.
    Send Fires when the system accepts data for sending.
    State Fires when the State property changes.

     

     

    Code Example

    How easy is the SecureTcp component to use? This example demonstrates creating a simple secure TCP client.

     

    Private Sub SecurityTest2()
    ' Perform all checks in the Authenticate event
    SecureTcp1.Security = secureNormal

    ' Connect to a secure echo server. Security will be negotiated first.
    SecureTcp1.Connect "myserver", 7

    ' Success! SSL connection established. Send some data
    ' just to test the SSL connection
    SecureTcp1.Send ("test")

    ' Receive and print the response
    Dim Data As String
    Dim ByteCount As Long
    ByteCount = SecureTcp1.Receive(Data)

    Debug.Print Data

    ' Close connection
    SecureTcp1.Close
    End Sub

    Private Sub SecureTcp1_Authenticate(ByVal RemoteCertificate As DartSecureFtpCtl.ICertificate,
    ByVal TrustedRoot As Boolean, ByVal ValidDate As Boolean, ByVal ValidSignature As Boolean,
    Valid As Boolean)
    ' The server's certificate has been received.
    Dim Msg As String

    ' Check to see if it passed all the checks.
    If Not Valid Then
    ' It didn't, so check everything and give the user the option to accept/reject.
    If Not ValidDate Then Msg = Msg + "- Certificate date is invalid" + vbCrLf
    If Not TrustedRoot Then Msg = Msg + "- Certificate Authority is not trusted"
    + vbCrLf
    If Not ValidSignature Then Msg = Msg + "- Certificate does not contain a valid
    signature" + vbCrLf

    Msg = "The following conditions are true:" + vbCrLf + vbCrLf + Msg + vbCrLf
    + vbCrLf
    Msg = Msg + "Do you still wish to authenticate?"
    If MsgBox(Msg, vbYesNo + vbExclamation, "Security Alert") = vbYes Then
    ' User still wants to accept so accept it (by setting Valid to true)
    Valid = True
    End If
    End If
    End Sub

    PowerTCP SSL  for ActiveX Features

     

    SecureServer ActiveX Control

     

    Use the SecureServer control to accept connections and handle requests while automatically authenticating and encrypting/decrypting all data sent and received using SSL2, SSL3, PCT, and TLS. Features include:

     

    • Select SSL 2.0, SSL 3.0, PCT, TLS or unencrypted TCP communications.
    • Customize certificate acceptance or rejection.
    • Client authentication fully supported.
    • Create ANY higher-level protocol secure server such as a POP server, SMTP server, FTP server, etc.
    • The SecureServer control uses an internal Daemon object and dynamically creates internal TCP objects as each passive connection is automatically accepted. Use this TCP object to send and receive data to that individual connection.

     

    Looking for the .NET version of this control?

     

    Development Environment
    • Visual Studio .NET (.NET Framework)
    • Visual Basic (VB)
    • Visual C++ (VC++)
    • FoxPro
    • PowerBuilder
    • Delphi
    • C++ Builder
    • ASP
    • Office 97/2000

     

     

    Interface

    Public Properties
    Certificate Certificate Object to use when authenticating to the remote host.
    Children Returns a collection of secure TCP child connections accepted by the server.
    ClientAuthentication Evaluates to a control that incorporates secure connections.
    LocalAddress Returns the address in use while the Daemon is active and an empty string when the Daemon socket is closed.
    LocalPort Returns the port number in use while the Daemon is active and 0 when the Daemon is closed.
    Protocol Specifies the security protocol used.
    ReuseAddress When True, the REUSEADDR socket option is set to accept duplicate use of the same LocalAddress / LocalPort pair (these are optional parameters of the Connect and Listen methods). If used, this property must be set prior to calling the Connect or Listen method and can be set at design time.
    Public Methods
    About Show the About Box.
    ClearCertificate Clears the Certificate object contained in the Certificate property.
    Close Release system resources.
    Listen Start listening for passive connections.
    Public Events
    Authenticate Fires when the remote host has sent a certificate to be authenticated.
    Count Fires to indicate that the Children.Count property has changed.
    Error Fires when an error condition occurs.
    Receive Fires when ReceiveBufferCount changes.
    Send Fires when the system accepts data for sending
    State Fires when the State property changes.

     

     

    Code Example

    How easy is the SecureServer control to use? This example demonstrates creating a simple secure TCP echo server.

     

    Private Sub StartServer()
    ' Create a new CertificateStore object. This helps to select a cert.
    Dim Store As New CertificateStore
    'Get the certificates in "MY" certificate store located in the
    'current user registry key.
    Store.Name = "MY"
    Store.Location = locationLocalMachine
    Store.Refresh

    ' Check to see if any certificates were found in this store.
    If Store.Certificates.Count > 0 Then
    ' Yep. Just use the first one.
    SecureServer1.Certificate = Store.Certificates.Item(1)
    Else
    ' Uh oh. No certificate found.
    MsgBox("Error. No certificate found. Cannot use security.")
    Exit Sub
    End If
    ' Start the server on port 8080.
    SecureServer1.Listen 8080
    End Sub

    Private Sub SecureServer1_Receive(ByVal Child As DartSecureCtl.ISecureTcp)
    ' Buffercount changed. Receive data from a connected client.
    Dim Data As String
    Dim ByteCount As Long
    ByteCount = Child.Receive(Data)

    ' Now echo the data back.
    Child.Send (Data)
    End Sub

    PowerTCP SSL for ActiveX Features

     

    Pop Control

     

    The Pop control downloads Internet email messages from any POP3 server. Features include:

     

    • Explicit and Implicit SSL Security.
    • Customize certificate acceptance or rejection.
    • Client authentication fully supported.
    • Message object collection represents all messages on the server. Retrieve a single message, all messages, or a range of messages.
    • Retrieve entire messages, message headers only, or a specified number of message lines.
    • Memory-based message retrieval makes this product perfect for ASP applications.
    • Powerful default operations are provided, including iteration through a message set to populate the Messages property.
    • The Message object provides an object representation of any e-mail message. This formatting object supports easy manipulation of simple and complex (even nested) MIME messages.
    • Complies with RFC 1939, "Post Office Protocol - Version 3"
    • Detailed knowledge of POP3 is not required.

     

     

     

    Interface
    Public Properties
    AttachmentDirectory Decoded message attachments are created in this directory.
    AttachmentOverwrite Specifies whether decoded message attachments are overwritten if the filename is the same.
    Blocked A True value indicates the control is currently executing a blocking method (Timeout is greater than 0), which has neither completed nor timed out with a ptTimeout error.
    Certificate Client certificate.
    Count Returns the number of messages on the server.
    Messages Collection of Message Objects that is the default destination for downloaded messages when using Get.
    Preview Number of lines of message body desired when using Get with msgPreview specified as a parameter.
    Privacy Security mode, such as Explicit, Implicit, None.
    Security For handling server certificates.
    State Provides status information to the user interface. The State event fires to signal that this property has changed.
    Timeout Controls the blocking behavior of methods that can be used in blocking and non-blocking ways.
    Public Methods
    Abort Abort any blocking method and release all system resources.
    About Show the About Box.
    ClearCertificate Clear the client certificate.
    Command Send any protocol command to the server.
    Delete Mark one or more messages for removal upon normal completion of the session.
    Get Get all or part of one or more messages.
    Login Connect to a POP3 server and authenticate in one easy step.
    Logout End a session.
    Reset Remove the "mark-for-delete" flag from all messages on the server.
    Trace Start or stop the accumulation of trace or debug data. Once started, this method accumulates data until it is turned off.
    Public Events
    Authenticate Presents the server certificate.
    Certificate Client certificate requested.
    Error Fires when an error condition occurs.
    Progress Fires when a method has completed, the server has sent a reply, or progress information is available.
    State Fires when the State property changes.

     

     

    Code Example

    How easy is the POP Control to use? Check out the VB example below which demonstrates how to retrieve all message headers from a POP server and displays data about each header.

     

    Pop1.Timeout = 30000

    ' Login to the server
    Pop1.Login "mail.test.com", "testuser", "testpassword"

    ' Only get the header of the messages
    Pop1.Preview = 0

    ' Get all message headers
    Pop1.Get msgPreview

    ' Iterate through the messages and display data
    Dim msg As Message
    For Each msg In Pop1.Messages
    MsgBox "From: " & msg.From & " Subject: " & msg.Subject
    Next

    PowerTCP SSL for ActiveX features

     

    FTP ActiveX Control

     

    The Ftp control is a powerful and flexible component-based implementation of the FTP protocol. High-level properties and methods provide quick code creation and ease-of use, while access to lower-level properties and methods provide power and control. Here are some feature highlights:

    • Select SSL 2.0, SSL 3.0, PCT, TLS or unencrypted FTP communications.
    • Login method combines connection setup and authentication into one easy step.
    • MGet and MPut methods transfer multiple files, including directory trees, with a single line of code.
    • Customize certificate acceptance and rejection; client authentication fully supported.
    • The powerful DartStream object permits the transfer of files directly to and from memory.
    • Supports both asynchronous (event-driven) and synchronous (scripted) application designs.
    • Supports large file transfers, with sizes greater than 4 GB.
    • Resumes interrupted transfers, and aborts transfers without losing the session connection.
    • Progress event reports data sent and received in real-time.
    • Listing object automatically parses listings into easy-to-use objects.
    • Performs ASCII or Binary transfers, in both Passive and Active modes.
    • Command method sends custom and raw commands to the server.
    • Creates and deletes folders on the server.
    • Get and Put methods perform complete transfer sessions from a single line of code.
    • Trace method provides access to the underlying communication, making logging and debugging sessions easy.
    • The Ftp control is NOT dependent on Wininet.dll.
    • Transfers files through all common firewalls and proxies, including Socks 4/5, Ftp SITE, Ftp USER, Ftp OPEN, Http CONNECT, and more.
    • Can be used in traditional client applications and services, as well as scalable ASP applications.
    • Can operate transparently in the background while other tasks are performed, or operate interactively like in most popular FTP applications.

     

    Interface

     


    Public Properties
    Allocate Indicates whether space must be allocated on a server as part of the Store method.
    Authentication Specifies the security protocol and authentication type used.
    Blocked A True value indicates the control is currently executing a blocking method (Timeout is greater than 0), which has neither completed nor timed out with a ptTimeout error.
    Certificate Certificate Object to use when authenticating to the remote host.
    Directory Working directory on the server.
    FileStructure File structure to be used for subsequent file transfers.
    Listing Object containing results from the last use of the List method or the NameList method.
    LocalAddress When the State property is tcpConnected, LocalAddress returns the address of the local host in dot notation (for example, nnn.nnn.nnn.nnn). When not connected, it returns an empty string.
    LocalDataPort Gets or sets a string used to restrict the local data port to a value or range compatible with your firewall.
    LocalPort When the State property is tcpConnected, LocalPort returns the port number that the socket is bound to. When not connected, it returns 0.
    Passive Indicates how the data connection is formed.
    Protocol Specifies the security protocol used.
    ProxyHost Specifies the name or address of the proxy server that requests are to be routed through.
    ProxyPassword Password to be sent on all requests through a proxy server that requires authentication.
    ProxyPort Specifies the port used by proxy server that requests are to be routed through.
    ProxyType The type of proxy server used for this connection.
    ProxyUsername Username to be sent on all requests through a proxy server that requires authentication.
    RemoteAddress Returns the address of the remote host in dot notation (i.e. nnn.nnn.nnn.nnn) when the State property is tcpConnected.
    RemotePort Returns the port number of the remote host when the State property is tcpConnected.
    Restart Indicates the server supports a restart mechanism for file downloads.
    SecretKey Sets the secret key used in password encryption.
    Security Sets the security level during communication.
    State Provides status information to the user interface. The State event fires to signal that this property has changed.
    StoreType Type of store that will be performed when the Store method is called.
    System Type of operating system used by the server.
    Timeout Controls the blocking behavior of methods that can be used in blocking and non-blocking ways.
    TransferMode Transfer mode to be used for subsequent file transfers.
    Type Data type to be used for subsequent file transfers.
    Public Methods
    Abort Abort any blocking method and release all system resources.
    AbortCommand Gracefully abort the last command sent.
    About Show the About Box.
    ChangeDirectoryUp Set the working directory to the parent directory. The Directory property can be checked to discover the new working directory.
    ClearCertificate Clears the Certificate object contained in the Cerificate property.
    Command Send any command string to the server. This method is useful for using servers that have an extended vocabulary.
    Delete Delete a file on the server.
    Get Log in, get a file, and log out in one step.
    Help Request helpful information from the server. The command takes an optional argument (for example, any command name) and returns more specific information as a response.
    List Get a file directory listing. The server sends name and supplementary information on each file found within the specified PathName. The Listing property is populated with this information.
    Login Connect to a server and send the commands to authenticate a session.
    Logout Gracefully log off and terminate the connection.
    MakeDirectory Create a directory.
    MGet Retrieve (get) multiple files or entire directory trees.
    MPut Store (put) multiple files or entire directory trees.
    NameList Get a file directory listing without file attributes. The server sends a file name for each file found within the PathName specified. The Listing property is filled with filenames (only the Name property is initialized).
    NoOperation Check the status of the control connection. The server should send an OK reply.
    Put Login, store a file, and logout in one easy step.
    RemoveDirectory Remove a directory.
    Rename Rename a file.
    Retrieve Retrieve (get) a complete file or part of a file starting at a specified position.
    Site Specify or request site-specific services. The nature of these services and the specification of their syntax can be found in the Result parameter of the Help method.
    Status Get server status information.
    Store Store (send) a complete file, or part of a file starting at a specified position.
    StructureMount Mount a different file system data structure without altering login or accounting information.
    Trace Start or stop the accumulation of trace or debug data. Once started, this method accumulates data until it is turned off.
    Public Events
    Authenticate Fires when the remote host has sent a certificate to be authenticated.
    Certificate Fires when the remote host is requesting a certificate and the Certificate property is not set to a valid Certificate Object.
    Error Fires when an error condition occurs.
    Progress Fires when the server replies to a command or while a file transfer takes place. The control interprets the reply and presents progress information with this event.
    State Fires when the State property changes.

     

     

    Code Example

    How easy is the FTP ActiveX component to use? Check out the following VB example below, which demonstrates a simple file transfer.

     

    Private Sub DoSecureLogin()
    ' The FTP server in this example is using Explicit SSL
    Ftp1.Authentication = atExplicitNormal ' Perform all checks in the Authenticate event.
    Ftp1.Protocol = secureAuto ' Login to the server. Security will be negotiated first.
    Ftp1.Login "server", "test", "password", , 21 ' Success! SSL connection established. Get help on the STOR
    ' command (just to test the SSL connection)
    Dim Response As String
    Ftp1.Help Response, "STOR" ' Print the response.
    Debug.Print (Response) ' Logout
    Ftp1.Logout
    End Sub

    Private Sub Ftp1_Authenticate(ByVal RemoteCertificate As DartFtpCtl.ICertificate, ByVal TrustedRoot As Boolean,
    ByVal ValidDate As Boolean, ByVal ValidSignature As Boolean, Valid As Boolean)
    Dim Msg As String
    ' Check various parts of the certificate to give the user a chance
    ' cancel if desired.
    If Not Valid Then
    If Not ValidDate And IgnoreDate = False Then Msg = Msg + "- Certificate date is invalid" + vbCrLf
    If Not TrustedRoot And IgnoreRoot = False Then Msg = Msg + "- Certificate Authority is not trusted" + vbCrLf
    If Not ValidSignature Then Msg = Msg + "- Certificate does not contain a valid signature" + vbCrLf
    End If

    If DoHostNameCheck And IgnoreHost = False Then
    If RemoteCertificate.IssuedTo <> Host Then
    Valid = False
    Msg = Msg + "- The name on the security certificate does not match the name of the site" + vbCrLf
    End If
    End If

    If Msg <> "" Then
    Msg = "The following conditions are true:" + vbCrLf + vbCrLf + Msg + vbCrLf + vbCrLf
    Msg = Msg + "Do you still wish to authenticate?"
    If MsgBox(Msg, vbYesNo + vbExclamation, "Security Alert") = vbYes Then
    DoHostNameCheck = False
    Valid = True
    End If
    Else
    Valid = True
    End If
    End Sub

     

    Return to Overview

    PowerTCP SSL for ActiveX Features

     

    SecureFtpServer ActiveX Control

     

    Use the SecureFtpServer control to create FTP server applications which can transfer files using SSL, TLS, or PCT. Features include:

     

    • Use SSL 2.0, SSL 3.0, PCT, TLS or unencrypted FTP communications.
    • Customize certificate acceptance or rejection.
    • Client authentication fully supported.
    • Uniquely capable of SSL over FTP through a Firewall using Dart's proprietary FirewallReady functionality (requires PowerTCP products on both sides of the connection).
    • The SecureFtpServer control uses an internal Daemon object and dynamically creates internal TCP objects as each passive connection is automatically accepted. Use this TCP object to send and receive data to that individual connection.
    • When a request is received, a corresponding event is raised. Write your own custom handling code in the event handler.
    • Add authentication and customized user directories within the Login event.
    • Disallow changing directories within the ChangeDirectoryUp and ChangeWorkingDirectory events to those who do not have proper permissions.
    • Disallow directory creation/deletion within the MakeDirectory and RemoveDirectory methods to those who do not have proper permissions
    • Disallow file upload/download within the Retrieve and Store event to those who do not have proper permissions.

     

    Development Environments
    • Visual Studio .NET (.NET Framework)
    • Visual Basic (VB)
    • Visual C++ (VC++)
    • FoxPro
    • PowerBuilder
    • Delphi
    • C++ Builder
    • ASP
    • Office 97/2000

     

     

    Interface
    Public Properties
    Authentication Specifies the security protocol and authentication type used.
    Certificate Certificate Object to use when authenticating to the remote host.
    ClientAuthentication Applies to server operation only.
    Count Number of nonsecure TCP connections currently open.
    LocalAddress Returns the address in use while the Daemon is active and an empty string when the Daemon socket is closed.
    LocalPort Returns the port number in use while the Daemon is active and 0 when the Daemon is closed
    LogDirectory Directory for daily log files.
    MaxIdleTime Maximum time in minutes a session can be idle before it terminates.
    Protocol Specifies the security protocol used.
    QuitMessage Message sent to the client in response to a QUIT command (when the user logs out.
    RequestAccountInfo Controls whether the ACCT command is requested.
    RestartAllowed Indicates whether users can restart file transfers.
    SecretKey Sets the secret key used in password encryption.
    Sessions Collection of active Session Objects.
    Status Text description of the server status. This is the message returned to the client in response to a STAT command.
    SystemName System name and type. This is the message returned to the client in response to a SYST command.
    WelcomeMessage Message returned to the client when the client initially connects.
    Public Methods
    About Show the About Box.
    ClearCertificate Clears the Certificate object contained in the Certificate property.
    Pause Stop the server from listening and accepting new connections, while allowing established connections and sessions to persist.
    Start Start processing FTP requests.
    Stop Stop the server from accepting new connections and immediately close existing client connections.
    Public Events
    Append Fires when the client attempts to append to a file (by sending an APPE command).
    Authenticate Fires when the remote host has sent a certificate to be authenticated.
    ChangeDirectoryUp Fires when the client sends a CDUP command.
    ChangeWorkingDirectory Fires when the client sends a CWD command.
    Command Fires when the client sends a custom command.
    Delete Fires when the client sends a DELE command.
    Error Fires whenever an error condition occurs.
    Help Fires when the client sends the HELP command.
    List Fires when the client sends the HELP command.
    Login Fires when the client attempts to log into the server.
    Logout Fires when the client sends the QUIT command.
    MakeDirectory Fires when the client sends a MKD command.
    NameList Fires when the client sends a NLST command.
    RemoveDirectory Fires when the client sends a RMD command.
    Rename Fires when the client attempts to rename a file.
    Retrieve Fires when the client attempts to retrieve a file.
    SessionEnd Fires just before the session is terminated.
    SessionInit Fires when the client first connects to the server.
    Site Fires when the client sends the SITE command.
    Status Fires when the client sends the STAT command.
    Store Fires when the client attempts to store a file.
    StructureMount Fires when the client sends the SMNT command.

     

     

    Code Example

    How easy is the SecureFtpServer control to use? This example demonstrates creating a fully-functional secure FTP server.

     

    Private Sub StartServer()
    ' Create a new CertificateStore object. This helps to select a cert.
    Dim Store As New CertificateStore
    'Get the certificates in "MY" certificate store located in the
    'current user registry key.
    Store.Name = "MY"
    Store.Location = locationLocalMachine
    Store.Refresh

    ' Check to see if any certificates were found in this store.
    If Store.Certificates.Count > 0 Then
    ' Yep. Just use the first one.
    SecureFtp1.Certificate = Store.Certificates.Item(1)
    Else
    ' Uh oh. No certificate found.
    MsgBox("Error. No certificate found. Cannot use security.")
    Exit Sub
    End If
    ' Start the server listening on port 21 with the FTP root C:\FtpRoot
    FtpServer1.Start "C:\FtpRoot"
    End Sub

     

    Return to Overview</p

    PowerTCP SSL for ActiveX Features

     

    Daemon ActiveX Control

    Use the Daemon control to build a multi-threaded server. Can accept an unlimited number of connections that can be assigned to dynamic SecureTcp controls for stream management. Features include:

    • Can accept an unlimited number of connections.
    • After accepting a connection, pass it to a Tcp control to send and receive data to the remote host.
    • The Daemon control comes complete with extensive samples demonstrating its use.
    • Help file quick starts show also demonstrate how to use the Daemon control.
    • Controls can operate on separate threads, so Server Applications can be written using apartment model multi-threading features. Or, see PowerTCP Server for ActiveX for an ActiveX control which already does this.

     

    Development Environments
    • Visual Studio .NET (.NET Framework)
    • Visual Basic (VB)
    • Visual C++ (VC++)
    • FoxPro
    • ASP
    • Office 97/2000
    • and more

     

    Interface
    Public Properties
    LocalAddress Returns the address in use while the Daemon is active and an empty string when the Daemon socket is closed.
    LocalPort Returns the port number in use while the Daemon is active and 0 when the Daemon is closed.
    ReuseAddress When True, the REUSEADDR socket option is set to accept duplicate use of the same LocalAddress / LocalPort pair (these are optional parameters of the Connect and Listen methods). If used, this property must be set prior to calling the Connect or Listen method and can be set at design time.
    Timeout Controls the blocking behavior of methods that can be used in blocking and non-blocking ways.
    Public Methods
    About Show the About Box.
    Accept Accept a connection and pass it to a TCP control for subsequent connection management. The Listen method must have been previously used to listen for passive connections.
    Close Release system resources.
    Listen Start listening for passive connections.
    Accept Fires when a passive connection occurs. Use the Accept method to get the socket, then transfer it to a TCP control for management.
    Error Fires when an error condition occurs.

      

    Code Example

    How easy is the Daemon ActiveX control to use? The following VB example demonstrates accepting a connection.

     

    ' Listen for connections on Port 7
    Daemon1.Listen 7

    Private Sub Daemon1_Accept()
    ' create a new TCP Control and assign the Socket to it
    Dim Tcp1 As Tcp

    ' myclass supports event notification for Tcp operation
    Set Tcp1 = New myclass
    Tcp1.Socket = Daemon1.Accept
    End Sub

     

    Return to Overview

    PowerTCP SSL for ActiveX Features

     

    NT Service ActiveX Control

     

    The NT Service control is used to turn any application into an NT Service. Features include:

     

    • Easily turn any server applications built using PowerTCP products into services.
    • Applications built with the Service Control target server-side applications that always run in the background, even when a user is not logged into the system.
    • With the Service control you can respond to all service events, including Start, Stop, Pause, and Resume. The Message event is included to support user messages sent from external applications. The Log method is included for logging event messages.
    • Convenient Install and Uninstall methods provide a way for your application to install and uninstall itself as a service. The Abort method allows your service to abort and stop itself while running.

     

     

    Interface Members

     

    Public Properties
    Params Contains the parameters passed to your service. This property may be read when the State property is serviceRunning.
    State Determine what state the service is in. The State event fires to signal that this property has changed.
    Public Methods
    Abort Abort and stop a running service.
    About Show the About Box.
    Connect Connect the service to the operating system’s Service Control Manager (SCM). Call this method as soon as possible after your application starts.
    Install Install the application as a service.
    Log Enter an event in the Windows Event Log.
    Uninstall Uninstall a service.
    Public Events
    Error Fires when an error occurs. This event fires before the error is reported back to the container's error object
    Message Fires when an application sends the service a user message. This can be used any way you wish, as it has no special meaning to the operating system.
    State Fires to indicate the State property has changed value.

     

     

    Code Example

    How easy is the NT Service control to use? Check out the following Service VB example below, which demonstrates creating an echo service with the Server control.

     

    Private Sub Form_Load()
    On Error GoTo OnError ' use intrinsic error handling

    'Connect to the Service Control Manager
    Service1.Connect
    Exit Sub

    OnError: ' Any error jumps here
    Debug.Print "Error #" + CStr(Err.Number) + ": " + Err.Description
    End Sub

    Private Sub Service1_State()
    On Error GoTo OnError ' use intrinsic error handling
    Dim I As Integer
    Select Case Service1.State
    Case serviceRunning
    ' service is now running, beep to the world!
    Beep

    ' Start the Echo Server
    Server1.Listen 7

    Case servicePaused
    ' service is now going to sleep, stop listening for new connections
    Server1.Close

    Case serviceResumed
    ' service is now waking up from sleep, resume listening!
    Server1.Listen 7

    Case serviceStopped
    ' service is now stopping, log a message to Windows event log
    Service1.Log serviceInformation, serviceInfoEvent, “Stopping”

    ' stop listening for new connections
    Server1.Close

    ' shut down all active connections
    For I = 1 To Server1.Children.Count
    Server1.Children(I).Close
    Next
    End Select
    Exit Sub

    OnError: ' Any error jumps here
    Debug.Print "Error #" + CStr(Err.Number) + ": " + Err.Description
    End Sub

    PowerTCP SSL for ActiveX Features

     

    Message Object

     

    Use the Message object to decode MIME email into an object representation you can easily manipulate. Every attachment, part, and label element is presented as an object, giving you un-surpassed processing control. Performs encoding too, so you can pass messages between the POP, IMAP, and SMTP controls! Features include:

     

    • Detailed knowledge of MIME is not required to use the Message object.
    • The Message object provides an object representation of any email message. This formatting object supports easy manipulation of simple and complex (even nested) MIME messages.
    • Additional features of the MIME object include persistence to disk in two formats: transport ready (encoded) message format and a quick loading (decoded) object format.
    • Encoded/decoded data need not be spooled to disk, making this product a real performer for messages buffered in memory.
    • One method call builds a message.
    • Create a ready-to-send HTML message with a single line of code.
       
      Development Environments
      • Visual Studio .NET (.NET Framework)
      • Visual Basic (VB)
      • Visual C++ (VC++)
      • FoxPro
      • PowerBuilder
      • Delphi
      • C++ Builder
      • ASP
      • Office 97/2000

       

       

      Interface Members

       


      Public Properties
      AttachmentDefaults When an attachment is added to a message, header fields are included that describe the attachment. This property provides default header fields for common attachment file types. These strings may be modified or more added so subsequent calls to the AddAttachment method use the header fields you provide.
      AttachmentDirectory
      Decoded message attachments are created in this directory.
      AttachmentOverwrite Specifies whether decoded message attachments are overwritten if the filename is the same.
      Attribute Server-related attributes of the message.
      Bcc Collection of recipient address strings that are not disclosed to other recipients (Blind Carbon Copy).
      Charset Gets and sets the character set used for string/byte array conversions.
      Cc Collection of address strings for the secondary recipients (Carbon Copy).
      Content Read from this property to encode the message or write to this property to initialize the object.
      From Specifies the author of the message.
      Header Collection of header fields contained in a Message Object or a Part Object.
      PartList Collection of all Part Objects in a multipart message.
      Parts Collection of "sibling" Part Objects existing at a single level in the message.
      QuotedPrintable When set to True, Quoted-Printable encoding is applied to textual parts of the message when it is encoded. When set to False, textual parts of the message are sent "as-is".
      Size Returns the size of the encoded message.
      Subject Subject of the message.
      Text Text contained in a non-multipart message.
      To Collection of recipient address strings.
      Public Methods
      AddAttachment Attach a file to the message.
      AddDigest Create a digest message such as that used to archive newsgroup or mailing list correspondence.
      AddHtml Create a ready-to-send HTML email message.
      AddMessage Attach an existing message to the message.
      AddText Add a text body part, optionally specifying a character set.
      Browse Activate the edit window. This is a debugging feature that supports run-time access for message browsing and editing.
      Decode Decode a message from consecutive buffers of encoded data.
      DecodeBuf Decode a single buffer.
      Encode Generate consecutive segments of the encoded message stream.
      EncodeBuf Encode a buffer.
      d>Forward Create a "forwarded" message to the specified recipient.
      Load Load a message file.
      Reply Create a "reply" message to sender or all recipients.
      Store Store a message in a file.

       

      Code Example

      How easy is the Message object to use? Check out the VB example below which demonstrates creating a message with an attachment using the Message object.

      ' Smtp1.Message is a Message object
      Smtp1.Message.To.Add "you@test.com" ' Specify the recipient
      Smtp1.Message.From = "me@test.com" ' Specify the sender
      Smtp1.Message.Subject = "Test Message" ' Specify the subject
      Smtp1.Message.Text = "This is a test." ' Add message body
      Smtp1.Message.AddAttachment "C:\company.gif" ' Add attachment
      Smtp1.Login "mail.dart.com" ' Start the mail session
      Smtp1.Send ' Send message
      Smtp1.Logout ' End session

      Purchase Options

      Customize your product and support options match your needs. Discounts are applied when products are purchased in multiples or within available product suites.

      $0.00 discount
       
      $1,299.00

      Have any questions about purchasing? See our Sales FAQ