Registering third party IFilters in WSS/MOSS 2007

STEP 1: COM REGISTRATION

1.Add Registry key:
HKEY_CLASSES_ROOT\CLSID\<ComClassIdOfTheIFIlter\InprocServer32
                Default : <IFIlterDllPath>
                ThreadingModel : Both

STEP 2 : REGISTER IFILTER WITH OS

There are 4 steps to registering the filter-extension mapping with OS:

1. HKEY_CLASSES_ROOT\<.ext>\(Default) --> <TypeName>
2. HKEY_CLASSES_ROOT\<TypeName>\(Default) --> <StorageGUID>
3. HKEY_CLASSES_ROOT\<StorageGUID>\PersistentHandler\(Default) --> <PersHandlerGUID>
4. HKEY_CLASSES_ROOT\<PersHandlerGUID>\PersistentHandler\PersistentAddinsRegistered\IID_IFilter\ (Default) -->  <IFilterCLSID for .ext>

Now we're all set to regiter our product with WSS (Windows Sharepoint Services) or MOSS( Microsoft Office
Sharepoint Server).

STEP 3: REGISTER FILTER EXTENSION WITH MOSS

1. Add the filter-extension to the File types crawled:
   Start -> Program -> Microsoft Office Server -> SharePoint 3.0 Central Administration  -> <Name of SharedService Provider> -> Search Settings -> File Types -> New File Type (Add extension here)

2. Add the following registry keys:

 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office    Server\12.0 \Search\Applications\<Site>\Gather\Portal_Content\Extensions\ExtensionList]
        <add extension to the list>

 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office Server\12.0\Search\Setup\Filters\.ext]
        Default = (value not set)
        Extension = <ext>
        FileTypeBucket REG_DWORD = 0x00000001 (1)
        MimeTypes = <application>       

 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office
 Server\12.0\Search\Setup\ContentIndexCommon\Filters\Extension\.ext]
        Default REG_MULTI_SZ = IFIlter CLASSID

3. Finally, recycle the Search Service by executing the following command from the command window:

   D:\> net stop osearch

   D:\> net start osearch

-------------------------------------------------------------------------------------------------------------------------------------

If You're using WSS, follow these steps instead:

STEP 3: REGISTER FILTER EXTENSION WITH WSS

1. Add the following registry keys:
 
 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shared Tools\Web Server  Extensions\12.0\Search\Setup\ContentIndexCommon\Filters\Extension\.<ext>]
        Default REG_MULTI_SZ = IFIlter CLASSID

 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shared Tools\Web Server  Extensions\12.0\Search\Setup\Filters\.<ext>]
        Default = (value not set)
        Extension = <ext>
        FileTypeBucket REG_DWORD = 0x00000001 (1)
        MimeTypes = <application>

 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shared Tools\Web Server Extensions\12.0\Search\Applications\<Site  GUID>\Gather\Search\Extensions\ExtensionList]
        <add extension to the list>

2. Finally, recycle the Search Service by executing the following command from the command window:

   D:\> net stop spsearch

   D:\> net start spsearch 

================================================================================

Note: An official document will follow shortly on MSDN.