The Witzend Search Library component SDK is a toolkit
of fast file searching functions, offering grep-like
find in files capabilities for Windows and the Web. Drop the Search Library
component into your project and instantly your program becomes a file search
powerhouse, able to quickly find text strings in disk files and documents
such as PDF, Microsoft Word, WordPerfect, and HTML.
Available as both a fast dynamic link library and small
ActiveX control.
The Witzend
Search Library is canned software that you can add to your
programming project in just minutes. Instantly your Win32 applications and
Web pages acquire sophisticated search capabilities:
File searching
Text retrieval
Data mining
Search and replace
Document search: ZIP, PDF, Word, WordPerfect, HTML, etc.
list
Scan intranet, desktop, or website
And much more...
Built for high speed and small size,
the Search Library component provides a simple and elegant API interface with
which to work. A wealth of example code provided with the Search Library SDK
demonstrates how to use the component whether you work in C++,
Visual Basic, VBA, HTML, Java, VBScript, or PowerBuilder.
"Witzend's example code is extremely well-written....
well-commented and thoughtfully crafted...."
Search buffers.
Search backward or forward through buffers of any
size, searching for ANSI, double-byte, or Unicode strings. Set search
options such as case-sensitivity (find Abc but not abc)
and whole-word searching (find any but not anywhere).
The Search Library can even find misspelled words through its fuzzy-search
feature.
Search files.
Specify search parameters, then call a single function. The Search Library
does all the work. Boolean and proximity operators AND, OR, NOT, and NEAR
let your application search for up to 256 strings at once. Date and size
filters can narrow searches to, say, only those files dated within the last
month between 10K and 50K in size; other filters limit searches to
specific file types.
The Search Library can create its own thread on which to conduct searches,
giving your program freedom to conduct other tasks while the search
is underway. It can even automatically replace text in files. A host of
features and search options ensures your program
retains tight control over the entire search process.
Search documents and ZIP archives.
The Search Library quickly scans document files in popular
formats such as Microsoft Word, PowerPoint, WordPerfect, and
Adobe Acrobat PDF. It can also reach into ZIP
files and search archived contents. You can experience these
features yourself by downloading the demonstration
program described in the next section.
DLL or ActiveX control -- your choice.
For Win32 applications, it doesnt get any
faster than the Search Librarys small and quick dynamic link
library. Or if you prefer, choose the Librarys ActiveX control,
which comes in two flavors.
The non-scriptable ActiveX control is designed for maximum
speed and minimum size, suitable for applications written in Win32
languages such as C, C++, Java, Visual Basic, and VBA. The second variation of
the Search Library ActiveX control, known as the scriptable edition,
accommodates Web and ASP pages that use scripting languages like VBScript
and JavaScript, as well as distributed client-server applications that
communicate across a network through remote procedure protocols such as
DCOM and SOAP.
Efficient and simple programming interface.
The Search Library handles all search operations
through only eight exported functions, and generally an application
requires the services of only three functions. For example, to search
disk files a program calls only InitFileSearch,
SearchFile, and CloseFileSearch.
No indexing.
Some search products must first index the files
they are about to search, but not the Witzend Search Library. The Search
Library does not index files before searching them -- it doesnt need
to because its so fast. The Library shines when searching files
that are
frequently updated, because no time is wasted in continually building a
new search index.
Extensive documentation and example code.
The Search Library SDK includes complete on-line
documentation and lots of example source code. Sample projects show
clearly how to use the Search Library whether you work with C++,
Visual Basic, MS Access, VBScript, or Java.
Examples include a version of the WitzSrch demonstration program,
a powerful grep-like utility. Written in C++ using MFC, the
WitzSrch program (described in the next section)
shows how an application can query for search parameters through a tabbed
dialog. Another interesting project demonstrates how to add the Search
Library to a Web page using VBScript or JavaScript. All example projects
are well-documented and complete.
"The documentation is voluminous, including plenty of tutorial material....tools and
documentation address C++, VB, and Web venues...."
Download the
demonstration program (pictured at the top of this page) to take
the Search Library for a test drive. Written to showcase the Search
Librarys speed and flexibility, the WitzSrch program is a very
useful (and very free) utility that quickly locates files using the Search
Librarys Boolean and proximity operators. If you like the WitzSrch
program, please feel free to add it permanently to your utility
collection.
The download file is named Setup1.exe (235K), which installs the WitzSrch
program and the Search Library modules to the folder of your choice.
None of these files makes any changes to your registry. If you wish
to remove WitzSrch after trying it out, simply delete the files from your
disk.
Run Setup1 to unzip the files, then run the WitzSrch program. The
Readme.wri file contains more information about WitzSrch and the
Witzend Search Library.
The Witzend Search Library runs under all 32-bit versions of the Windows
operating systems, including Windows 95 and above. All core functions are
written in highly-optimized 32-bit assembly language, assuring maximum speed
and minimum size. The Search Library is completely thread-safe and can be
accessed simultaneously by multiple threads.
Built from the same core set of search routines, each of the Librarys
three different executable versions is designed to fulfill the requirements
of different application types. Any of the three versions will give your
programs fast file search capabilities, but which version best
meets your needs depends on your project:
Search Library Form
File Size
Additional
Files Required
Threading
Number of
Functions
Scripting
Access
Runtime
License
DLL
18K
none
multiple
8
no
no
Non-scriptable
ActiveX control
56K
none
apartment
8
no
no
Scriptable
ActiveX control
94K
C runtime
apartment
63
yes
yes
Dynamic Link Library.
Only 18K in size, the Witzend Search Library in its DLL form requires
no other auxiliary files. It does not rely on a class library such as MFC
and does not link to the C runtime library. The DLL exports only eight
functions: three for searching and/or replacing buffer data, three for
handling search and replace operations in files, and two service functions.
The DLL can be used by any application written in a Win32 language such as
C, C++, Delphi, Visual Basic, etc.
ActiveX Control.
Both ActiveX control versions of the Search Library conform to standard
apartment threading. Neither control uses a class library such as MFC,
though the scriptable edition assumes the presence of the C runtime library.
The non-scriptable ActiveX control is smaller (56K) than its sister
because it does not need the C runtime and does not expose properties; the
scriptable edition (94K), which is designed for Web-based scripting access,
ASP and PHP pages, and server-side programs, exposes over 40 properties that
govern search parameters and behavior.
"If you're looking for a search toolkit that's fast, powerful, and reasonably priced,
I think you'll like this one."
The Search Library is available for a one-time license fee of
$199 US, which includes:
30-day warranty.
Free technical support.
Free updates to next version.
Both the dynamic link library and ActiveX control executables.
Complete on-line documentation and extensive example projects, including
source code for an earlier version of the WitzSrch demonstration program
described above. (Source code for the Search Library itself is not included.)