C# using DtSearch API
Posted on 2010-08-12
I'm deploying a C# application that uses DtSearch on a number of different machines. I'm finding that when the app is built with dtsearchNetApi.dll, it runs successfully on Windows XP machines but not Windows 2003 machines. When the app is built with dtsearchNetApi2.dll, it runs on Windows 2003 machines but not Windows XP machines. The failure occurs when trying to execute a method on an instance of a class that uses dtSearch.Engine ("using dtSearch.Engine;"). So something like this:
IndexReader ir = new IndexReader(lstItems); // OK
ir.ReadIndexes(); // Fails
System.IO.FileNotFoundException: The specified module could not be found. (Exception from HRESULT: 0x8007007E)
The app is deployed with ClickOnce, and either dtsearchNetApi.dll or dtsearchNetApi2.dll is included in the Application Files on the Publish tab. The main dtSearch library - dten600.dll - is registered on all machines.