About this Demo

Because I am concerned with emails and because I like Indy, I decided to extract some of my basic functions from my units and build a program that contains a mailserver and a mailclient as an interface between the internet and a local LAN.
These code snippets now go far beyond the limits of a pure demo, it is something you really can start with. It is in every demo easily shown how to do a job with three and a half lines of code, but when you really want to make something solid out of that, you have to re-write everything. So it comes often they say „Keep the demo small, it will show how easy the product is to use!“. That's wrong! A good product like Indy shows up its power, when really used out in the field. I've got an office-mailsystem using Indy running for 3 years now (just got an automatic mail for mail number 35,000 processed).

They say „Ninety percent of a project's work is done in ten percent of the project's time“.
That's true.
Dramatically true!

So what I hope to do is to provide you with the ten percent.

What have we got? A couple of units with more or less separated functionallity. Because I use a database for storing all the information about users, mailboxes and emails, I separated that part into a untit and named it POP3DBModule. When you have a look at it -surprise, surprise- no database interface in it. Why? Well I'd like to write a demo for Indy, not for Firebird.
Just 3 properties of that DataModule and 5 Procs and 2 independent Functions.
A Form to set, save and reload some values like accounts, passwords etc. ProviderUnit. Take care, the passwords are not encrypted but stored literally!!!
A RAS-unit to handle dial-up. I included an object to handle some of those functions easier.
I admitt not to have any information from where I've got that RAS initially, I would like to mention that guy, it was a good job.
There is the center of this demo, the MboxDataModule which keeps the Indy Servers and Clients together and provides all the functionallity of sending and receiving mail.
The last unit is the controlling form from where you start and stop the server, set the options and from which automatically send and receive of mail is initiated.

I Checked with Outlook express the function of servers and clients and everythig seemed to work well.

Nothing left for you to do? Oh, yes, you can! Spend the remaining 90 percent of work! Making screenshots (of your own forms) write some documentation, implement database connectivity, write a mail-reader, in short: make a product out of it and if you can – sell it.
Licensing? Easy done, but DO it:

Portions of this software are Copyright (c) 1993 - 2005, Chad Z. Hower (Kudzu) and the Indy Pit Crew - http://www.IndyProject.org/
That fulfills the licence requirements.

So all I can whish you is:
Happy coding!

Jörg Meier (Bob)
Emil@jmeiersoftware.de