Visual Studio のリモートデバッグ機能を使う場合、リモートデバッグモニタという名前の実行ファイルをローカルマシンからリモートマシンにコピーして、リモートデバッグモニタを動作させれば、ローカルマシンの Visual Studio から「プロセスにアタッチ」することができる。
…のであるが、一向にリモートマシンに繋がらないときがある。そういうときは、リモートデバッグモニタのバージョンを確認する必要がある。なぜなら、MSDN ライブラリの「 方法 : リモート デバッグをセットアップする 」が、VS 2005 時代から更新されていないからだ。
MSDN ライブラリ for VS 2008 SP1 の当該ドキュメントには、リモートデバッグモニタのパスが以下のように記述されている。
Install path\Microsoft Visual Studio 8\Common7\IDE\Remote Debugger\x86
ただし、"Install path" はインストールパス。デフォルトでは "C:\Program Files" になっている。
さて、上記の文字列ではバージョン番号のところが "8" になっているが、これは VS 2005 の内部バージョンであって、VS 2008 の内部バージョンは "9" である。ゆえに VS 2008 のリモートデバッグモニタへの正しいパスは以下の通り。
Install path\Microsoft Visual Studio 9.0\Common7\IDE\Remote Debugger\x86
なぜかバージョン番号が "9" じゃなくて "9.0" になっていたり…。
間違ったバージョンのリモートデバッグモニタに接続しようとすると、「バージョンが違う」といった親切なエラーではなく、 "unable to connect..." といった「接続できない」ダイアログが出てくる。もちろん、ファイアウォールなどの事情で実際に network unreachable である可能性もあるが、もしもローカルマシンの VS が 2005 でない(2008 or 2010)なら、リモートデバッグモニタのバージョンを再確認する必要がある。