title: How do I access a 64 bit DLL from a 32 bit application running under 64 bit windows?
body: <p>The OS is Windows XP 64 bits.</p>
  
  <p>The application is Microsoft Office 32 bits, on top of which my application (an office addin) runs.</p>
  
  <p>The DLL is a 64 bit Adobe Acrobat "IFilter" dll, which enables access to the contents of a .pdf file.</p>
  
  <p>I thought that the solution to the problem is finding the 32 bit version of the IFilter dll, but because the OS is windows XP 64 bits the only version that will register properly is the 64 bits version.</p>
  
  <p>Setting the target platform of my .NET project to x86, 64 bit or "Any CPU" won't solve the problem.</p>
  
  <p>The 64 bit IFilter works properly only when I invoke it from within a console application, but once it gets invoked from within the context of the office Add-In, it does nothing.</p>
  
  <p>What's the best way to solve this problem? Should I load the 64 bit dll into a new process and have the office add-in communicate with it using remoting?</p>
  
  <p>Also, for those of you familiar with IFilter, is it possible to deploy the 32 bit version of the IFilter along with the office add-in and then access it directly without searching the registry for the properly installed IFilter? ( I couldn't do it )</p>