Tested on Windows 2008 and Window7 32-bit and 64-bit machines:
If you run GetBinaryType on a 64-bit machine against 32-bit and 64-bit DLLs, the function returns FALSE
with GetLastError set to ERROR_BAD_EXE_FORMAT, as expected. If you run GetBinaryType on a 32-bit
machine against 32-bit DLLs, the result is the same.
However, if you run GetBinaryType on a 32-bit machine against a 64-bit DLL, the function unexpectedly
returns TRUE with BinaryType set to SCS_64BIT_BINARY. That's quite inconsistent behaviour and not
very helpful.