                                PrevChek.Pas
This component is yet another check for a previous instance of your 
application running.  This component has full commented source code
and is fairly well featured.
To Install select Options|Install components from the main menu
  Select 'Add'
  Select Browse
  Select the '.DCU' file type, and select PREVINST.DCU
  Click on the OK button, and after a while you should find a new tab on
  your Palette - 'Custom' containing a pretty ICON.

This component should be dropped on either the main form of the
application or on the Splash screen form, whichever shows first.

The properties of TOneInstance:
  ActivatePrevious:  If this is set to True the previous instance of your
                     application will be brought to the front, activated
                     and the current instance terminated with extreme
                     predjudice.
  DisplayMessage:    If this is set to True, a dialogue message is brought
                     up stating that another instance of your application
                     is already running.
  DuplicateMessage:  This is the message displayed in the dialogue box
                     if DisplyMessage is set to True.  If DisplayMessage
                     is set to true, and this property is empty, a default
                     message is presented.
  OnSecondInst:      This event is called when a second instance of your
                     application is identified.  AbortInst is passed in as
                     True.  If your event handler requires the current
                     instance NOT to terminate then ensure you set 
                     AbortInst to False on exit from your handler.
                     NOTE: If ActivatePrevious is True, this instance will
                           be killed irrespective of the setting of AbortInst.
                     The event is called after the Message is displayed
                     (if property set) and before the previous instance is
                     activated (if property is set).

  Full commented source is included, and is intended as a demonstration
  of writing a non-visual component, and my attempt at putting something
  back for the help I have received.

  Any suggestions (printable ones please <g>) or problems can be mailed to
  me at one of the above addresses.

  I am currently working on a Component which can be dropped on any
  bsSizeable form, and allow the designer to restrict the Maximum size
  and minimum size the window can be sized to.  This works visually by
  restricting the bounds of the window frame to the pre-determined settings
  like applications written in C++.  Let me know if you are interested
  when I have completed it.

  Enjoy ;-)

  Andy


