WeOnlyDo! COM ImapServer ActiveX control is component that can be easily integrated into your applications to provide full IMAP4rev1 protocol server implementation. All you need to do is to put it on VB form, call it's Start method and it's immediately accepting connections by your clients! It fully supports commands defined in RFC2060.
IMAP stands for Internet Message Access Protocol. It is a method of accessing electronic mail or bulletin board messages that are kept on a (possibly shared) mail server. In other words, it permits a "client" email program to access remote message stores as if they were local.
IMAP's ability to access messages (both new and saved) from more than one computer has become extremely important as reliance on electronic messaging and use of multiple computers increase, but this functionality cannot be taken for granted: the widely used Post Office Protocol (POP) works best when one has only a single computer, since it was designed to support "offline" message access, wherein messages are downloaded and then deleted from the mail server. This mode of access is not compatible with access from multiple computers since it tends to sprinkle messages across all of the computers used for mail access. Thus, unless all of those machines share a common file system, the offline mode of access that POP was designed to support effectively ties the user to one computer for message storage and manipulation. (taken from http://www.imap.org).
Difference between well known POP3 protocol and IMAP4 is that IMAP supports access to multiple folders - while POP3 knew only INBOX (one folder with messages). Instead of using your local system to create folders and move received messages to them for local archival, IMAP4 allows you to do the same - but still for messages to remain on remote system. This way you can access your messages from anywhere, using any client that supports IMAP4 (even web based emails) and still have access to *ALL* emails.
Backward compatibility to POP3 still exists - almost every IMAP4 server have one folder called 'INBOX', and this is the same folder (and only folder!) that you access when you use POP3 protocol. Keep in mind that 'folder' is same as 'mailbox' since UNIX keeps all emails in one file, while we plan to keep emails in our samples as separate files, but idea is the same.
INBOX folder is very important in this process. Because of this, INBOX object should always exist in your code because most clients will first try to access it! You might even add this folder automatically when user logs in, just to make sure client doesn't receive an error.
wodImapServer is IMAP4rev1 implementation as defined by RFC2060.
Since wodImapServer is COM object and not the full application, there's few things developer should look after - simply because COM objects cannot deal with information that should be preserved between the sessions. Most important is to keep UID information (UNIQUE ID) for folders and messages. If you do so - wodImapServer will work flawlessly with any client that connects to it. On each client action wodImapServer will fire appropriate event where you can internally handle the action and return positive or negative result. You should also deal with message flags.
wodImapServer does not deal with message storage - you should do it by yourself. It will deal with structures and references to folders and messages - but actual contents of messages cannot be handled by wodImapServer. Rather, it will depend on your code when messages are accessed, hoping that you provided properly formatted messages and proper flag information. If you don't - it will not complain, but IMAP clients may...
You should consider all wodImapServer folder as virtual folders - none of them doesn't necessarily exist on your system. Each time wodImapServer requires list of folders, or list of messages - event is fired to notify you to populate his collections with appropriate information - and that's all. You can keep messages in database, on external system, or wherever you need - as long as you can provide necessary information on wodImapServer's request.
NOTE: In DEMO version you cannot change GreetingMessage property, and cannot Deny user in Connected event.
Count us as a satisfied WeOnlyDo customer. We appreciate your terrific support to get the secure Telnet working properly.
The SFTP ocx is one of the finest pieces of programming I have seen. It worked out of the box...
...your service has been phenomenal. It's always quick and you are there when I need you.
Brilliant, even works on the mobile phone...
...with a minimum of effort as the DLL interface was written with such simplicity...
I really like these products - they are consistently first rate!
It is very refreshing to find such helpful, knowledgeable and quick responding technical support.
Your professionalism is reflected into your email, your product and your web site. I am confident that these will make the difference.
Your component works really great. With minor effort I have been able to convert my delphi application...
...with the SFTP interface you produced, everything was so simple to understand, we were able to start coding almost immediately!