SQLTools

A small COM component for fts processing
By Rudi Bruchez (rudi@babaluga.com) - 16th March 2001
written in, VC++ 6 - ATL

Installation :
------------
Copy the dll to a directory  of your choice and register it with :
regsvr32.exe sqltools.dll 

<NOTE: regsvr32 can be found in the system (win9x) or system32(NT/2000) directory>

For uninstalling/unregistering :
regsvr32.exe /u sqltools.dll

Noise words file :
The component uses the noise words file provided with SQL Server for removing
empty words from the FTS catalog. The component searches for the path and name of
this file in the registry, at HKEY_LOCAL_MACHINE\SOFTWARE\Babaluga\sqltools. 

String value NoiseFile:
Habitually the noise word file can be found in the directory \MSSQL7\FTDATA\SQLServer\Config\noise.enu
The extension depends on the installed language of SQL Server, enu is the extension for American English.

A regfile is provided with the program for writing this info into the registry. You
can manually edit it and write the path to the noise file. In the registry, the
path must be written with double backslashes (escaped), like this : d:\\temp\\noise.edu

Usage :
-----
The component has one method only; SearchString, which returns the passed
string and a string formatted to be used seamlessly as a search criterion for
a full-text search query, for instance with the CONTAINS SQL function.

The string is formatted with each word surrounded by double quotes with an AND in between.
- If you specify an AND or an OR in the search text, it is respected.
- Double quotes found in the incoming string are replaced, so there is no search on sentences.
- Empty words as found in the noise words files are removed from the string.
- Single character words are removed (as punctuation surrounded by spaces)

Copyright :
---------
This (modest) component is delivered at no cost and for free use as (beginner's)
C++ source code which could be useful for people who want to develop with ATL.
Everyone is encouraged to improve it and add functionality, provided this author 
is credited in all future versions.
I would be happy to receive any improvements to the component, for improving my
personal use of it as well :)

Contact information :
-------------------

Rudi Bruchez
rudi@babaluga.com
http://www.babaluga.com/
(neverending "in construction" website in french)
