title: Calling 32bit Code from 64bit Process
body: <p>I have an application that we're trying to migrate to 64bit from 32bit.  It's .NET, compiled using the x64 flags.  However, we have a large number of DLLs written in FORTRAN 90 compiled for 32bit.  The functions in the FORTRAN DLLs are fairly simple:  you put data in, you pull data out; no state of any sort.  We also don't spend a lot of time there, a total of maybe 3%, but the calculation logic it performs is invaluable.</p>
  
  <p>Can I somehow call the 32bit DLLs from 64bit code?  MSDN suggests that I can't, period.  I've done some simple hacking and verified this.  Everything throws an invalid entry point exception.  The only possible solution i've found so far is to create COM+ wrappers for all of the 32bit DLL functions and invoke COM from the 64bit process.  This seems like quite a headache.  We can also run the process in WoW emulation, but then the memory ceiling wouldn't be increased, capping at around 1.6gb.</p>
  
  <p>Is there any other way to call the 32bit DLLs from a 64bit CLR process?</p>