Talk about a funky error.
We are in the process of migrating from Visual C++ 6.0 to Visual Studio.NET. They aren't compatible. Once you make the switch, you cannot go back.
Luckily, I'm the second one to make the switch. And I've spent the last 3 days hunting down bugs, and tracking things that don't work.
One of the developers on my team has been having really ugly issues. It appears as if some of the microsoft-supplied code is broken. Code that compiles on my system doesn't compile on his. We've been going through settings and options and environment variables, all to no avail.
I finally checked the actual *files*. The supplied-by-microsoft header files for their libraries.
The ones on his system had been *overwritten* by something coming from Rational Rose. Similar, but not quite the same.
So I zipped up my include directory, and he copied it to his system. Now it appears that everything is working properly for him.
Of course, now he has to upgrade to .NET...
Because, you know, changing your primary development tools in the middle of development is always a good strategy.