Contents

Introduction

Screen Layout

Entering Search Specifications

Selecting the Drive(s) to Search

Starting the Search

File Selection/Deselection and the Edit Menu Options

File Menu Options

Option Menu Options

Search Options Menu

File Associations

Using FFW as a Drag and Drop server

Executing Commands on found Files

Notes and Restrictions on Operations on files found in archives


Introduction

Fast File Find for Windows is a file locating utility for Windows. Some of its features include :

*	Full background processing so you can work on any other application while FFW does the file search in the  background.

*	Multiple search specifications allowed.

*	Ability to execute multiple commands on selected files.

*	Cut and Copy of found files to clipboard

*	Optional display of file size and file date and time.

*	Easy to use 3D interface.

What's New in Version 2

*	Drag and Drop server (like File Manager) allows dragging of single or multiple files to programs which are drag and drop clients (like Program Manager or Print Manager).

*	Archive search of ZIP and ARJ files.

*	Search for files between two dates.

*	Supports type (extension) association e.g. double click on a file with a .txt extension and Notepad is invoked for the file you double clicked on.

*	Customization of type of display (custom 3d, Ms3dctl or 2d) and status bar.

*	Copy, Move and Delete of selected files (even though this could be done in V1 via FFW's ability to execute commands on selected found files)

*	Multiple instances of FFW are now allowed.

*	Default version compiled for 386 specific code (ffw286.exe still runs on a 286).

Copyright

Fast File Find For Windows  (C) D. Munro 1992,93

Disclaimer

This program comes with NO WARRANTY written or implied.  Use  this program at your own risk.

Additionally the drag and drop server feature is an undocumented Windows feature and as such there is no guarantee that it will work in future releases of Windows.

Acknowledgements

Windows is a registered trademark of Microsoft Inc.

FFW Version 1 was written using Microsoft C/C++ Version 7

FFW Version 2 was written using Microsoft's great new Visual C/C++ compiler/development environment.

Requirements

 80286 or better (ffw286.exe)

80386 or better (ffw.exe)

 Windows 3.1 or better

Licensing

This program has been released for distribution as freeware.  You may copy it but not sell it or make money out of it in any other way.

Suggestions and Bug Reports

If you have any questions, comments, or suggestions, or if  you have stumbled across any bugs in FFW, I can be contacted at :

Internet  :     CCAHDM@BELUGA.UPE.AC.ZA

Friendly City BBS (041)511185  (2400/9600/14400,N,8,1 Full Duplex)

Port Elizabeth Technikon BBS  (041) 534278   (2400/9600/14400 ,N,8,1  Full Duplex)

Address

  	P.O. Box 12854

  	Centrahill

  	PORT ELIZABETH

  	6001

  	South Africa

Limitations

FFW cannot find more than 8160 files. This is due to the fact that in 16 bit Windows List boxes contents is restricted to 64K.  If FFW used list boxes normally (used LBS_HASSTRINGS style) then it would have supported much less even than the 8160 mentioned above. To get around this the file found list box is implemented as a owner draw list box with the list box only containing pointers to the actual strings displayed allowing 8160 entries (each entry  takes 4 bytes for the far pointer, 4 bytes overhead and the list box itself takes another 255 bytes).  (In case nobody noticed the buttons are owner drawn as well)

Additionally the drag and drop server feature is an undocumented Windows feature and as such there is no guarantee that it will work in future releases of Windows.


Screen Layout


Entering Search Specifications

The first step in doing a file search is to enter one or  more search specifications in the file specification  edit control.  The search specification may be a file name or a  MS-DOS wild card file specification. You may enter more  than one search specification if you wish to find more  than one file or kind of file in one search. Press ENTER  after every specification and press TAB or use the mouse  when finished entering file specifications to move to the  drives selection list.

Specification Examples

Entering

RUN.BAT

in the file specification field will find all files named  RUN.BAT on the specified drives.

Entering :

RUN*.BAT

in the file specification field will find all files of the  form RUN?????.BAT eg RUN.BAT, RUNME.BAT, RUNOLD.BAT etc.

Entering

*.C

*.H

*.RC

will find all files with extensions .C, .H and .RC

Example


Drive Specification

After entering the search specifications  the next step is to select which drives to search using  the drives selection list box on the upper right of the  FFW window.  Press TAB in the file specification field or  use the mouse to get to the drives selection list box.  This is a multiple selection list box so you may select  as many drives as you wish.  To select with the keyboard  use the arrow keys to move up and down and the space bar  to select. With the mouse use the vertical scroll bar to  scroll and the mouse left button for selection.

Example


Starting the Search

After entering the file specifications and  drive selections you may start the  search by pressing the Search button.  To press this button move the mouse cursor over the  button and press the left button or  simply press the  ENTER key (this is a default button).

The file search will now begin.  The Search button will change  to a cancel button (a stop sign bitmap will replace the  search bitmap) and the status bars status will change to 'Searching'.  To stop the search at any time press the cancel  button.  You may now continue with other Windows  applications while FFW does the search.

FFW will place the name of the file and its path and  optionally its size and last access date (see   option menu options) in the results list  box which occupies the bottom section of the FFW window.

(The display format of files found in archives differs slightly - see Search Option)

Search Button

Stop Button


File Selection/Deselection and the Edit Menu Options

Files in the files found result list box may be selected by  the user. When a file is selected it is displayed in  inverse video.  Certain operations can only be performed  on selected files. To select a file with the mouse scroll  the files found list box up or down using the vertical  scroll bar, move the cursor over the file to select and  press the left mouse button. Multiple files may be  selected. To de-select a file follow the same procedure.  When using the keyboard first press TAB until the files  found list box has the input focus (this is denoted by a  dotted rectangle around one of the display lines) then  use the cursor up and down keys to scroll up and down and  the space bar to select or de-select.

Menu Options

The Edit menu options all act on the files found results list box which forms the bottom half of the FFW windows.  The options are :

Select All

This option  selects all files in the files found list box  When a file is selected it is displayed in reverse video.

Unselect All

This option de-selects all files in the files found windows.

Toggle Selections

This option inverts the current selection status of all  files in the files found list box. If a file was selected  it is de-selected and vice versa.

Cut to Clipboard

The Cut to clipboard option will delete all selected files  from the results list box and place these files in  text format in the Windows Clipboard. Another program  such as a Word Processor or Spreadsheet may then read  these files from the clipboard (normally using their Edit  menu Paste option).

Copy to Clipboard

The copy to clipboard is the same as the cut option except  that it does NOT delete selected files from the results list box.


The File Menu Options

The file menu allows you to copy, move and delete files found using FFW.

Note : All the above operations could be performed via FFW's execute multiple commands option.

Before performing any of these operations the files on which the operations are to be performed must be selected (See File Selection/Deselection).

Copying and Moving

If you choose to copy or move files you will be presented with a dialog box allowing you to specify the destination path where the files will be copied/moved to. Using this you can either enter the path directly from the keyboard or use the drives list box and directories list box to build a path. Each time you select a drive or path (using the left mouse button or the ENTER key) the selected path is updated.

When you are satisfied the destination path is correct select the OK button. The copy will then proceed in the background so you can continue working. When the copy/move is finished a results box will tell you if all copies were successful.

NOTE : If you are using MS DOS 6 and you want to move files between directories on the same drive it will be faster to use the DOS 6 MOVE command using FFW's execute commands option since it does not physically copy the files.

The Select Destination Path Dialog Box

Deleting

A dialog box will appear asking if you are sure. Select OK if you are (dead sure!). The files will then be deleted in the background.


Option Menu Commands

The option menu has various options affecting the display of  files found.  When any of these options are selected a  check mark will appear next to it on the menu.

The options are :

File Size

When this option is selected the size of the file in bytes  will be displayed next to the filename in the files found  results list box.

File Date and Time

When this option is selected the date and time of the last  change to the file will be shown in the format specified  by you in the Windows Control Panel International  options.

Always on Top

When this option is selected the FFW window will always  appear on top of other windows .

3D Display

When this option is selected a popup menu will appear with the following options :

Custom 3d Display - 	The default 3d display with bevelled edges.

Microsoft 3D Controls - The 3d controls implemented by Microsoft in their MS3DCTL.DLL library.

No 3D Display -	The standard Windows 2d look.

Status Bar

When this option is selected a popup menu will appear with the following options :

3D Status Bar -	A 3d status bar with a recessed look

2D Status Bar -	A 2d status bar with lines separating options

No Status Bar -	Amazingly this means that no status bar will be displayed.


Search Options

Find Files between two Dates

This option allows you to restrict any subsequent file finds to files dated between two dates supplied by you.

When this option is selected a dialog box will be displayed providing a check box at the top to enable or disable date/time restrictions on file finds.  If you enable date/time restrictions on file finds (by clicking on the enable/disable check box) the start date/time and end date/time fields (edit controls) are enabled.  You first enter the start date in MM DD YYYY format and the start time in HH MM SS format on the 24 hour clock eg 11pm in 23:00:00. Use the TAB key to move between the fields.  The end date/time is filled in similarly.  When you are satisfied with your selection of  start and end date/times select the OK button.  The Cancel button may also be selected at any time to undo any changes made on the dialog box.

In the following example file finds have been restricted to dates between 1 July 1993 at 00:00:00 and 25 July 1993 at 20:00:00.

Search ZIP Archives

If this option is selected FFW will additionally search all ZIP files found on the drive selected to be searched using the drive selection list box. This has been tested on Pkzip 1.1 and 2.04 archives only.  The found files are displayed somewhat differently from normal files in that the path also has as its last component the ZIP file in which the file was found.

Search ARJ Archives

If this option is selected FFW will additionally search all ARJ files found on the drive selected to be searched using the drive selection list box. This has been tested on Arj 2.30 and 2.41 archives only. The found files are displayed somewhat differently from normal files in that the path also has as its last component the ARJ file in which the file was found.

An example of the display of files found in archives :


File Associations

Windows has the capability to associate a given extension (e.g. .TXT) with a particular program.  FFW supports this by allowing the execution of the associated program on any file in the files found results list box by double clicking on any such file.

Example : If you have done a search for .BMP files and you double click on one of them then the PAINTBRUSH program will be automatically invoked for the .BMP file you selected.

Double clicking on a .EXE, .COM or .BAT file will execute the file.

To add new file associations use the File Manager Add Association option.


Using FFW as a Drag and Drop Server

Windows 3.1 introduced the Drag and Drop concept to the (Microsoft) Windows Community, with File Manager for Windows 3.1 being a Drag and Drop server while Program Manager and  Print Manager are clients.  Using drag and drop selected files may be dragged from one program's window (called the server) with the mouse to another program's window (called the client) and then dropped on the client.  The client can then use these files in any way appropriate to it (e.g. Print Manager prints files dropped on it while Program Manager adds them to the group on which they were dropped).

When a Drag and Drop operation is in progress the cursor changes to one of the following :

Window under cursor does not accept Drag and Drop Files

Window accepts Drag and Drop files (One file selected)

Window accepts Drag and Drop files (Many files selected)

Using FFW as a Drag and Drop Server

To use FFW as a drag and drop server :

1] Select the files you wish to drag

2] Press and hold down the right mouse button and move the cursor while holding down the right mouse button to the destination window. If the destination window is a Drag and Drop client the cursor will change to one of the latter two illustrated above (depending on whether you selected one or many files to drag).

3] Release the right mouse button when the accepting cursor is over the client  window.

NOTE

The drag and drop server feature  is an undocumented Windows feature (only the client API functions were documented) and as such there is no guarantee that it will work in future releases of Windows.


Executing Commands on Found Files

FFW provides a feature whereby you may execute multiple  commands on files found by the file search. The steps to  follow to execute commands on files found are :

 1] First search for the files by entering a file  specification and selecting the  drives to search as described previously.

 2] Select the files on which to execute  commands or use the EDIT menu option  Select All if you wish the commands to operate on all the  files found.

3] Enter the commands you wish executed in the optional  commands edit control terminating each command  by  pressing ENTER.  To specify the names of files in the  commands use one of the substitution characters listed  below.

4] Press the Execute button (with the picture of the gallows  on it). To press this button move the mouse cursor over  the button and press the left button or using the TAB key  to cycle through the controls until the EXECUTE button  has the input focus (this is denoted by a dotted  rectangle around the inside of the button), then press  SPACE.

Substitution Characters in Commands

Normally when performing a DOS command on a filename you  would specify the actual filename to the DOS command line  e.g. DEL FOO.BAK.  In  this case however there will be  multiple file names which we want to automate the  processing of DOS commands on.  To do this FFW allows you  to specify a substitution character preceded by a &.

  These are :

&p = Substitute full path name e.g. C:\FOO\BAR\FOO.BAK

&f =  Substitute file name only e.g. FOO.BAK

&d = Substitute directory name only e.g. C:\FOO\BAR

&l =  Substitute drive letter (and colon) only e.g. C:

So now if your command is DEL &P then for each selected file  its full name will be substituted instead of the &p when  the command is executed.

(Note : The substitution characters are not case sensitive so &p = &P)

See the topic 'Notes and Restrictions on files found in Archives' for restrictions on substitution characters which may be used in commands on files found using the archive search facility.

Examples

Example 1 :

To delete all .BAK files on drives C, D and E.

Specify *.BAK in the file specification and select drives  C,D and E to search on using the drive selection list  box, then press ENTER to find all .BAK files on the  specified drives.

Select all the files using the Select All option on the EDIT  menu.

Enter :

DEL &P

in the optional commands edit control and press the EXECUTE  button.

Alternatively you could enter

&L

CD &D

DEL &F

this when substituted for example for C:\FOO\BAR\FOO.BAK   would lead to the following sequence of commands :

C:

CD C:\FOO\BAR

DEL FOO.BAK

Example 2

To compile selected programs which have a make file called  MAKEFILE. on drive C.

Specify MAKEFILE. in the file specification and select drive C  to search on using the drive selection list box, then  press ENTER to find all the MAKEFILE.'s on the specified  drive.

Select the files you wish to compile.

Enter the following  in the commands edit control :

&L

CD &D

NMAKE /a /f  &F

(See below)    (

Example 3

Archive all icons (.ico) and icon library (.icl) files found on drives c: and d: to a archive file on f: called icons.zip.  Place the names of all icon files archived in this way into a text file in the current directory called icolist.txt.

See FFW screen layout.


Notes on operations on files found in archives
Notes and restrictions on operations on files found in archives

You may select (see File Selection/Deselection and the Edit Menu Options) files found in archives as well as normal files. Operations may then be performed on these files as if they were normal files but the following should be noted :

Execute

When executing a command on a file (see Executing Commands on Found Files) in an archive the file in first de-archived into the current (FFW) directory and if the de-archive was succesful the commands specified on it are executed (with the current FFW directory substituted for its path).  After execution the de-archived file is deleted. Only the &p substitution character may be used at present.

What actually happens is that the following commands are inserted into the batch file which FFW creates and executes (the example below is for ZIP files) :

pkunzip zipfile filename

if errorlevel 9 goto genlab

if errorlevel 8 goto genlab

...

...

if errorlevel 1 goto genlab

user commands on &p specifications only

del filename

:genlab

There must be enough space in the FFW directory to hold the de-archived file.

Suggestions for improvements in later versions are welcome.

Copy and Move (see file menu options)

In version 2 these operations operate on the archive (ZIP or ARJ) file and not on the file inside the archive so a copy of  the archive file is made.  This may be changed in future releases. The delete operation has no effect on files in archives (or on the archive itself).

File Association (see File Associations)

Double clicking on an archive file will execute the program associated with that particular archive file on the archive file eg if in you have the following line in your WIN.INI files [Extensions] section :

ZIP=E:\WINAPPS\WINZIP\WINZIP.EXE ^.ZIP

and you double click on a file found inside a ZIP file then WINZIP will be executed on the ZIP file containing the file you clicked on..