Finding the Filter DLL for a File
Note
Indexing Service is no longer supported as of Windows XP and is unavailable for use as of Windows 8. Instead, use Windows Search for client side search and Microsoft Search Server Express for server side search.
The following example, for HTML files, shows how to find the filter DLL for a document.
To find the filter DLL for a document:
Determine the persistent handler registered for an extension. Check to see whether the extension for the type of files that the DLL filters has a persistent handler registered under the registry entry \HKEY_LOCAL_MACHINE\SOFTWARE\Classes. Let this be <Value1>.
\HKEY_LOCAL_MACHINE\SOFTWARE\Classes .htm PersistentHandler {EEC97550-47A9-11CF-B952-00AA0051FE20}
If this entry exists, skip to step 4 and use <Value1> there.
Alternatively, determine the CLSID. If there is not a persistent handler registered for the extension, find the CLSID associated with the document type under the registry entry \HKEY_LOCAL_MACHINE\SOFTWARE\Classes. Let this be <Value2>.
\HKEY_LOCAL_MACHINE\SOFTWARE\Classes htmlfile = Class for WWW HTML files CLSID = {25336920-03F9-11CF-8FD0-00AA00686F13}
Determine the persistent handler. Using <Value2>determined in Step 2, find the PersistentHandler value for the \HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\<Value2> entry. Let this be <Value3>.
\HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID {25336920-03F9-11CF-8FD0-00AA00686F13} = WWW HTML files PersistentHandler = {EEC97550-47A9-11CF-B952-00AA0051FE20}
Determine the IFilter persistent handler GUID. Using <Value1> determined in Step 1 or <Value3> determined in Step 3, find the IFilter Persistent Handler GUID for the document type. The value under the registry entry
\HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\<Value1 or 3>\PersistentAddinsRegistered\
89BCB740-6119-101A-BCB7-00DD010655AF yields the IFilter Persistent Handler GUID for this document type. Let this be <Value4>. 89BCB740-6119-101A-BCB7-00DD010655AF is the IFilter interface GUID.
\HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID {EEC97550-47A9-11CF-B952-00AA0051FE20} = REG_SZ HTML File Persistent Handler PersistentAddinsRegistered {89BCB740-6119-101A-BCB7-00DD010655AF} = REG_SZ {E0CA5340-4534-11CF-B952-00AA0051FE20}
Determine the filter DLL. Using <Value4> determined in Step 4, the filter DLL can be found under the entry
\HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\<Value4>\InprocServer32.
\HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID {E0CA5340-4534-11CF-B952-00AA0051FE20} = REG_SZ HTML Filter InprocServer32 = REG_SZ nlhtml.dll
In this example, the filter DLL for HTML documents is nlhtml.dll