私ははまってしまいました。Visual Studio .NET 2003とVisual Studio…たぶん2005以降、ソリューションファイルのマクロ定義(($OutDir)などのあれ)が相対パスから絶対パスに代わっているんですね。
たとえば、Visual Studio .NET 2003のソリューションファイルをVisual Studio 2008へアップグレードすると、相対パス(.\Releaseなど)で定義されています。
しかし、Visual Studio 2010で新規に作った場合(Visual Studio 2008でも同じでしたが)、この辺が全部絶対パスになっています。
通常プロジェクト移行しただけならばこういうこと起きないと思いますけど、たとえばVisual Studio .NET 2003/VC6などで作られたC++のプロジェクトを64bitにして、なおかつちょっといじろうなんてお思った人は注意してください。いないかな…。