Close
dtSearch Text Retrieval Engine Programmer's Reference
Adding File Format Support

How to add support for additional file formats to the dtSearch Engine.

The dtSearch Engine has internal file parsers for a wide range of formats, which are described in the "Supported File Formats" article. In the C++ API, there is a way to register your own file parser(s) with dtSearch to override or supplement the built-in file parsers. For more information on this API, see "File Parser API". Using this API, you can create an external file parser DLL that dtSearch will automatically recognize and use during indexing. dtSearch recognizes external file parser DLLs by looking for DLLs in the "Viewers" folder under the dtSearch Engine's "Home" directory. To use your external file parser with dtSearch Desktop, just copy the DLL into the "Viewers" folder under the dtSearch "BIN" folder.

IFilters

IFilters are components that enable various Microsoft search products to extract text from documents. For example, when you install Microsoft OneNote, an IFilter is installed to enable searching of *.one files. To tell dtSearch to use installed IFilters to process some of your files, set up a rule in the file type table and under File type, select "IFilter". 

The dtSearch Engine can use IFilters to supplement its own file parsers. To use IFilters with the dtSearch Engine, 

(1) Create a rule in a file type table that tells dtSearch which files to process using IFilters, and 

(2) Enable IFilter integration in your application by placing dtv_ifilter.dll in the Viewers folder under the dtSearch Engine's Home directory. 

The following is an example of a file type table that specifies that IFilters should be used for all files with a .vsd extension:

<?xml version="1.0" encoding="UTF-8" ?> <dtSearchFileTypeRules> <DefaultEncoding>Auto-detect (Recommended)</DefaultEncoding> <Item> <Name>IFilter</Name> <TypeId>265</TypeId> <Filters>*.vsd</Filters> <Flags>1</Flags> </Item> </dtSearchFileTypeRules>

To apply this rule, you would create a filetype.xml file with the content above and then use Options.FileTypeTableFile to tell the dtSearch Engine to use the file.