Knowledgebase Home Page  >  SearchUnit  >  Version 3 Articles
Search the Knowledge Base
Plug-in example: how to index document filenames so that they are searchable. (VB.NET)
https://keyoti.com/kb/Default.aspx?ToDo=view&questId=213&catId=67

Options

Print this page
Email this to a friend

This article applies to version 3 only. From v2010 onwards, document filenames are indexed for searching by default.

In order to make the indexer include document file names in the index, and therefore make them searchable, we can easily write a simple plug-in. 

For an overview and indepth detail on how plug-ins work, please see

http://keyoti.com/products/search/dotNetWeb/Help2010/UserGuide/Central%20Event%20System%20-%20Plug-ins/Introduction.htm

Step 1. Download the attached VB.NET plug-in project (see bottom of this page).

Step 2. Build the project, ensuring that it is referencing your version of the search DLLs properly.

Step 3. To use the plug-in, you specify the "EventHandlerAssembly" property in the configuration.  Eg. open the index manager tool, specify the index directory to work with, click configuration and in "EventHandlerAssembly" set a path like

C:\Documents and Settings\\Desktop\FilenameIndexingPlugin\FilenameIndexingPlugin\bin\Debug\FilenameIndexingPlugin.dll

Step 4. Also under configuration, make sure that "Logging" is checked, and then check "IgnoreLastModifiedDate" and uncheck "UseFileSizeToIdentifyChange".  The last two settings force the indexer to reindex any already indexed files.

Step 5. Build the index and try searching.

Troubleshooting

If it doesn't work, then open the index directory and look at the logs;

Check the CentralEventDispatcher.txt log file in the index directory for info - it should have lines like;
 
06/17/2008 20:26 Success, initialized external event handler assembly @ C:\Documents and Settings\\Desktop\FilenameIndexingPlugin\FilenameIndexingPlugin\bin\Debug\FilenameIndexingPlugin.dll
 
Also, check the FilenameIndexingPlugin.txt log file, which when working properly will have lines like;
 
5/20/2009 14:31 SUCCESS
and then lines corresponding to the Log lines that are in the demo project code.
 
Note: once the plugin is loaded (eg. by Visual Studio in the designer) any changes you make to the plugin code will require the process to be stopped (eg. Visual Studio to be closed and reopened) since the DLL cannot be replaced while it is loaded by another process.
 
If you have trouble, please read "Using A Plugin"
 
 
and feel free to email support please.

Related Questions:

Attachments: