Two users report that Apprehend compiles but did not register on the ToolPalette. To solve this problem try this:

1. Open AsgCapture.pas
2. Goto line 281 and change procedure register to procedure Register
3. Goto line 2936 and change procedure register to procedure Register
4. Compile the component
5. Install the component.
6. Add the path to the source files to the ide’s path.



This site was updated with Apprehend version 6.1 on April 9, 2012. Support for Delphi 5 – Delphi XE2 added by way of packages for each. To use the component in any Delphi version use the supplied packages or if a package is not available create a new package and add the Pascal files to the package. Compile and install the package, then add the Apprehend source folder to the library path in the Delphi IDE.

What’s New
Version 6.1 – April 9, 2012
• Bug Fix for Delphi 7, Delphi 2007 –
-ASGCapture.pas- make D7 compatable – unfortunately SetParentComponent is protected in D7
-Changed all references to SetParentComponent ( xxx ); to frmPosition.Parent := xxx;
• Bug fixes TImage Demo
-To provide for a canvas all images loaded into TImage are converted to bitmap. Saving did not convert the bitmap to the native graphic format before saving. All TImage.Picture.Bitmaps are converted and saved as the specified graphic format.
-The image fit code was missing for captures and open image
-Dimensions now displayed with locale default thousand separator
• Bug fixes PageControlTImageDemo – minor bug fixes
• Added Apprehend TImagePainter Demo



Apprehend 6.0 was released on April 4, 2012.

The Apprehend screen capture component for Embarcadero ™ Delphi captures images of the desktop or full screen, a selected area of the screen, the active window, a selected object or window, a freehand (polygon) area of the screen, pre-selected icon sized (16×16, 32×32 or 48×48) area, and user specified area of the screen. Apprehend demos for TImage or TImageEN are provided.  Apprehend will work with Delphi 5 – Delphi XE2.  Packages are provided for Delphi 5-Delphi 2010.  Delphi XE users should create a new package, add all the *.pas files, compile and install, then set the path to the source in the IDE.

What’s New
• Added public var CaptureCount – auto increments with each screen capture
• Added procedure ResetCaptureCount – set CaptureCount to 0
• Added function CaptureSmallIcon method (16×16) – a 16×16 selection
• Added function CaptureLargeIcon method (48×48) – a 48×48 selection
• Added keyboard control for precise selection positioning to CaptureSmallIcon (16×16), CaptureIcon (32×32), CaptureLargeIcon(48×48), and CaptureSpecificSizeSelection methods
• Added event OnBeforeCaptureEvent- event is executed before scrren capture
• Removed event OnAfterCaptureEventRemoved – Move any code in the old OnCaptureEvent to the OnAfterCaptureEvent
• Added Simple Demo
• Added PageControlTImage Demo – a multi-image screen capture demo with TImage
• Added ImageENImageList Demo – a multi-image screen capture demo with TImageEN ( all captures are stored in memory)
• Improved TImage Demo
• Small Bug Fixes
• Updated demos

Apprehend may be downloaded here: http://www.frontiernet.net/~w2m/downloads.html


Recently TMS Software released a FTP Uploader which I tried and liked because of its simplicity, but I was not satisfied with it because it did not reset itself to inform the user that the upload was successful so I developed an alternate app. similar to the TMS application using a TMS component called WebCopy.

My application is called WebFTP.  WebFTP is a small but easy to use application to quickly upload files to a web server using FTP.   Just select the Options button or press the F8 key and enter your user name, password, port (if necessary), the ftp host (or server) and the remote server folder you want the files to be sent to.   Then just drag and drop files from Windows Explorer to WebFTP and the dropped files will be uploaded to the specified server folder.

The application displays information about the status of the upload including the bytes uploaded,  transfer rate, elapsed time, along with a progress bar status.  The status information and progress bar are reset after each file is uploaded.  In addition WebFTP maintains a log file of all uploads and allows use of the clipboard to paste html links to a webpage or other document.  A list of files for a selected remote folder can also be viewed.

WebFTP installs from a InnoSetup Installer and includes a help file.  WebFTP can be downloaded here.   Any comments about WebFTP can be posted on this blog.


The Apprehend Screen Capture component Website may be visited here:

The Apprehend Screen Capture component may be downloaded from here.

Welcome to Delphi Tips, Trips and Code. 

Over the next several weeks we will post hard to find Delphi 2007-2010 Tips, Tricks and Code including Windows 32 API, Windows Shell, and VCL Imaging and ImageEN code.  Sit back, relax and enjoy.

Source code Test

function AddThousandSeparator( S: string; Chr: char ): string;
{ Add Thousand Separator to a string }
  i: integer;
  Result := S;
  i := Length( S ) - 2;
  while i > 1 do
  Insert( Chr, Result, i );
  i := i - 3;

Prevent Delphi Version Compiler Warnings between Delphi 2007 and Delphi 2010 by adding
unit uMain;
to each unit in the application where necessary