The following example, for HTML files, shows how 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.