Example Name:   POPTST.EXE

Description:    This sample demonstrates how to use POP OLE custom control
				Files:   POPTST.FOR
				         POPTST.VBP

Usage:          To use the sample, follow the following steps:
                
                Fill in the edit fields:
                Remote Host: name of your mail server
                User Id: your user id on the server
                Password: your password on the server

                To retrieve mail, follow the following steps:
                    Connect
                    Authenticate
                Now Message Count indicates number of messages in your mail box. To retrieve
                a message, type it in the "Message No" edit field.
                    Press Retrieve button to retrieve it.
                    Press Top button to get the first several lines of the message. The number
                          of lines retrieved by Top command is customizable by "top lines" field.
                    Checking Logging box gives more logging information.
                

                Other buttons:
                    Delete - to delete message "Message No"
                    Last - last command of POP
                    Noop - noop command of POP - verifies the connection
                    Msg Size - message size for message "Message No"
                    Next   - increment "Message No" field and updates "Msg Size" edit box
					GetDoc - retrieve the message "Message No". If currently not connected,
							 will connect and do authorization, and then do the retrieval.
							 After retrieval is complete, then it does a disconnect (if
							 previously not connected). If "Message No" does not exist,
							 no message will be retrieved, and the connection stays active.
							 Connection also stays active if you were previously connected prior
							 to doing a GetDoc.

							 To use Popct1.GetDoc, you must first set Popct1.URL with the following format: 

							 Syntax: (You may use (2.) if RemoteHost, UserId, Password are set in properties correctly)
							  1.)      pop://user:password@hostname:portnum/message_number
							  2.)      pop:///message_number
							  3.)      pop://user:password@hostname:/message_number

							 Ex: 
								  Popct1.URL = "pop:///3" 
								  Popct1.GetDoc
	
							 this GetDoc references message number 3.

							 Ex: 
								  Popct1.URL = "pop://" + Popct1.UserId + ":110" + Popct1.Password + "@" + 
												Popct1.RemoteHost + ":/" + "7"
								  Popct1.GetDoc

							 this GetDoc references message number 7.

                Other fields:
                    Connection state: reflects current value of "State" property
                    Protocol State: reflects current value of "ProtocolState" property
                    Last Error: last error received in Error notification

               

Notes:
		+ This sample program is not optimized for user interface, but should not
          ever crash if you press the wrong button. An error notifications should be
          issued instead.

		+ For setting popct1.URL, if you are currently connected to a host, you should use the
		  syntax "pop:///message_number". If not currently connected, then use either
		  syntax 1.) or 3.) . If syntax 1.) or 3.) is used and you are currently connected 
		  to a host, and the URL has a different host, userid, or password than the original 
		  connection, an error, 1013, will be fired, and setting popct1.URL will fail:

		  "1013 : The argument passed to a function was not in the correct format or in specified range"

		+ The header information is parsed separate from the body information for each message retrieved.
		  Look at the code in the Popct1.DocOutput event to see how access Headers.

		+ Example of the Busy event being processed is shown.

		+ Use of a timer is illustrated in the Popct1 Authenticate, Timeout, Quit, and StateChanged events.


Known Problems:


Features missing in the OCX:

