That is interesting. The 32 bit DLL that I had trouble with in C++ was useable from C# thru P/Invoke. Another C++ annoyance is the .LIB file requirement. To link in C++ you need the .LIB file. And to run, the .DLL. With C# P/Invoke, only the .DLL is necessary.