QUOTE(robby says @ May 9 2006, 00:53)

After all, even you basic Visual Basic apps are using C++ DLLs from other compilers, are they not? Correct me if I've mistaken, but I thought that the binary incompatibility was with regard to precompiled headers and the likes. I was unaware that the function calls and APIs themselves would not be compatible.
Those are not C++ DLLs, but COM DLLs. While Microsoft's compilers use a COM compatible C++ ABI, the same is not true for other compilers. The MIDL compiler generates hybrid header files that contain C++ definitions of the contained (COM) interfaces as well as compiler-independent C definitions.
foobar2000 is not based on COM, there are no C header files for foobar2000 and we will not create them, since it would be way too much work (and we don't believe in C for this kind of project).