We have a 32-bit library written and compiled in Borland Delphi. This library is referenced by various other projects including a WCF Service hosted in IIS. The service is compiled using the x86 option and everything works fine on a 32-bit machine. However, on our 64-bit server the service fails when calling into the 32-bit Delphi library. Does anyone know why .NET code compiled with 32-bit option would still fail while calling a non-.NET 32-bit library on a 64-bit machine?