{ ****************************************************************** }
{                                                                    }
{   Delphi TWindowImage component (descendant of TImage component)   }
{                                                                    }
{   Window Image VCL Component for Delphi 1.x/Windows 3.1x (16-bit)  }
{                                                                    }
{   Copyright  1997-1998 C. L. Lankford                             }
{           All Rights Reserved.                                     }
{                                                                    }
{   This component is offered "AS IS" and WITHOUT ANY WARRANTIES,    }
{   EXPRESSED/IMPLIED.  Responsibility for ANY damages, etc., rests  }
{   entirely with the user.  Registered developers may freely use    }
{   the component (and/or component source code), royalty-free, if   }
{   embedded/linked into applications.  Further, if registered, the  }
{   component may be descended from, to create new components, also  }
{   royalty-free.  If not registered, the component may NOT be used  }
{   in any software created for distribution to others, whether done }
{   "FOR-PROFIT" or otherwise.  The component source code, this file,}
{   may NOT be distributed by any means, by any individual whether   }
{   registered or otherwise, other than by the author.               }
{                                                                    }
{   C. L. Lankford              lankford@net-master.net              }
{   108 Marshall St. SW         http://www.net-master.net/~lankford/ }
{   Hartselle, AL  35640-4106   (NO PHONE CALLS ACCEPTED!!!)         }
{   U.S.A.                                                           }
{                                                                    }
{   TWindowImage is a Delphi/Windows screen image capture component. }
{   While it can always be used in the same manner as it's parent,   }
{   TImage, it's primary use is for capturing screen/window images.  }
{   TWindowImage is primarily used in screen capture applications.   }
{                                                                    }
{   TWindowImage, as it descends from TImage, has all the events,    }
{   properties, and methods of TImage.  In addition, the component   }
{   has the following additional event, method, and properties:      }
{                                                                    }
{        Event:    OnCapture, occurs when a screen/window image has  }
{                  been captured, as a result of a GetWindowImage    }
{                  method call.  Add code for this event via the     }
{                  Events page of the Object Inspector, to add any   }
{                  special code to be executed on image captures.    }
{                  Add code for this event at design-time, to be     }
{		   executed when the event occurs at run-time.       }
{                                                                    }
{        Method:   GetWindowImage, acquires a bitmap image of the    }
{		   desired screen, window, or window client area, as }
{                  selected by setting the properties below.         }
{                  Callable/executable at run-time only.             }
{                  (Example call/usage: WindowImage1.GetWindowImage;)}
{                                                                    }
{        Property: WActiveWindow (boolean), Window/Screen selection  }
{                  TRUE  = Select active window only                 }
{                  FALSE = Select entire display screen              }
{                  Selectable at either Design-Time or Run-Time.     }
{                  (Example: WindowImage1.WActiveWindow:=TRUE;)      }
{                                                                    }
{        Property: WClientArea (boolean), Window area selection      }
{                  TRUE  = Select client area of window only         }
{                  FALSE = Select entire window (with borders, etc.) }
{                  Selectable at either Design-Time or Run-Time.     }
{                  (Example: WindowImage1.WClientArea:=TRUE;)        }
{                  (Note: full-screen client area = full-screen)     }
{                                                                    }
{        Property: OtherWindow (hwnd), specifies the handle to some  }
{                  other window/control to capture a bitmap of.      }
{                  Selectable only at Run-Time.                      }
{                  (Example: windowwanted:=findwindow(nil,           }
{                                                'Program Manager'); }
{                            WindowImage1.OtherWindow:=windowwanted;)}
{                  (Note: using OtherWindow overrides WActiveWindow, }
{		          set to 0, zero, to reset during execution) }
{                                                                    }
{ ****************************************************************** }


Files Included:
---------------
file_id.diz  - Short package overview for software vendors/libraries
readme.txt   - This file, package/component description information
install.txt  - TWindowImage component installation instructions
usage.txt    - TWindowImage component usage instructions
orderfrm.txt - TWindowImage registration & source code order form
winimage.dcr - TWindowImage VCL palette bitmap (compiled resource)
winimage.dcu - TWindowImage VCL component (compiled unit)
demoinfo.txt - Brief descriptions/objectives of the demo programs
demos.zip    - .ZIP archive compressed file, containing source code
               of numerous example Delphi programs which use the
               TWindowImage component.  These demo programs show the
               various ways that the component can be used by an
               application, but are not production quality software
               themselves.


Registration:
-------------
The component .DCU file contained in this package is intended for
component testing prior to ordering.  There are no restrictions
embedded in the code, the .DCU is a fully functional component.  The
only limitations on its use are entirely of a legal nature.  You may
NOT legally distribute applications, components, etc., that utilize
the TWindowImage component, unless you register with the author.
Registration & source code ordering details are contained in the file:
orderfrm.txt, which is the order form itself.  Registration
constitutes acceptance of the terms of the disclaimer of warranty,
as given below.  If not registered, you must remove the component,
and all related files, from your computer after thirty (30) days.
Failure to remove the unregistered component after thirty (30) days
is in violation of the copyright, per this release agreement.


Benefits of Registration:
-------------------------
1. Full source code for the component is provided upon registration.
   The only restriction is that the source file itself not be
   distributed (stand-alone, or packaged), other than by the author.
2. Registered developers are granted non-exclusive, royalty-free,
   distribution rights, with regard to applications which have the
   TWindowImage component (winimage.dcu) embedded/linked into their
   application.  The only restriction is that the winimage.dcu file
   itself may NOT be distributed in a stand-alone fashion (i.e. you
   may not distribute the winimage.dcu file itself).
3. Registered developers may request product support for a period of
   30 (thirty) days.  Product support, if needed, is handled via
   e-mail only, per the author's e-mail address at:
   lankford@net-master.net  E-mail support is more efficient, less
   costly, less labor intensive, and much faster than ANY other method.
   Product support is limited to problem resolution and component
   capability usage, and does NOT imply that we will do design work
   for you or provide enhancements to component capabilities, etc.
4. Registered developers may use the TWindowImage component, subject to
   item 2 above, on any number of computers owned, provided that the
   registered developer is an individual.  This is to say that site
   licensing is NOT required for an individual developer.  For site
   licensing to companies, departments, agencies, etc., please contact
   the author for details and volume discount pricing.


Disclaimer of Warranty:
-----------------------
THIS SOFTWARE AND THE ACCOMPANYING FILES ARE PROVIDED "AS IS"
AND WITHOUT WARRANTIES AS TO PERFORMANCE OF MERCHANTABILITY OR
ANY OTHER WARRANTIES WHETHER EXPRESSED OR IMPLIED.  NO
WARRANTY OF FITNESS FOR A PARTICULAR PURPOSE IS OFFERED.  ALL
RESPONSIBILITY FOR DAMAGES (WHETHER ACTUAL/REAL OR IMAGINED)
RESTS ENTIRELY WITH THE DEVELOPER OF APPLICATIONS THAT USE THE
COMPONENT, AND THEIR CLIENT(S).  ANY SOFTWARE DEVELOPER THAT IS
NOT IN COMPLETE AGREEMENT WITH THE FOREGOING TEXT SHOULD NOT
USE THE COMPONENT, AND SHOULD REMOVE SAID COMPONENT FROM THEIR
COMPUTER SYSTEM PERMANENTLY.  REGISTRATION/LICENSE OF THE
COMPONENT IS CONTINGENT UPON THE ACCEPTANCE OF THIS DISCLAIMER.
REGISTRATION CONSTITUTES ACCEPTANCE OF THESE TERMS.


Version History:
----------------
V1.0 - TWindowImage Delphi 1.x/Windows 3.1x VCL Component
       initial release.  (June 1997)
V1.1 - Plugged a potential memory leak, optimized the code
       to use less memory per component instance, removed
       the "TWindowImage Demo" text from the shareware demo
       (trial) version, reduced the price of the component
       (across the board - reduction for all delivery methods)
       registration, offered source code with registration,
       and updated the documentation.  (August 1997)
V1.2 - Maintenance release.  Added code to open/restore a
       window/application, if iconized, for component/control
       image capturing of windowed controls contained in an
       iconized window.  Updated the documentation.  Reduced
       the registration cost yet AGAIN.  (April 1998)


Naming Conventions:
-------------------
TWindowImage - Class name of the TWindowImage component.
WindowImage  - Name for the component that shows up in
               the component palette hint and in the
               installed component list.  Also used as
               the base name for instances of the component
               added to forms (i.e. WindowImage1, WindowImage2,
               etc.), until the developer changes the names
               via the object inspector, etc.
WinImage     - Unit name added to application "USES" clauses.
               Also the base name of the component compiled
               unit file winimage.dcu, component compiled
               resource file (containing the palette
               bitmap) winimage.dcr, etc.