Microsoft goofed in a big way when they issued revisions to the MDAC (Microsoft Data Access Classes) with Windows 7 SP1 and Windows 2008 R2 SP1 that made applications that were compiled on those systems incompatible with earlier versions of Windows. *oops* And it took them a long time to figure out how to fix it. But a fix has been issued.
And if you're compiling your application on the newer versions of the OS, you need to include a line that says "#import "MSADO28.tlb" to be able to work on all supported versions of Windows.
Unfortunately, if you're compiling your application on an older version of the OS, you need to include a line that says "#import "MSADO15.dll".
These are notably different lines.
And we have a mix of machines where we do development and builds that have different versions of the OS installed.
I have figured out a way to work around this in Visual Studio 2005, but it's distinctly less than pretty.