2008-08-27 25 views
0

私は、自分のコードの近くにアサーションを打つ実行可能ファイル(他の誰かによってコンパイルされた)を持っています。私はVisual C++ 2003でコードを作成しますが、この特定の実行可能ファイル用のプロジェクトファイルはありません(コードはさまざまなツールを構築するために使用されています)。 Visual C++のデバッガでバイナリを起動し、ソースがどこにあるかを伝えることは可能ですか?私はGDBで前にこれをやったので、それが可能でなければならないことが分かっています。Visual C++ 2003で外部実行可能ファイルに接続する

答えて

0

他にも短い答えは、Visual Studioの実行可能プロセスに接続してコード内にブレークポイントを設定し、ソースを持たないプロセスに入るとソースを尋ねるはずですファイル。

0

はい、可能です。空のプロジェクトを設定し、希望の.exeファイルをデバッグ対象として指定するだけです。私はWinampのためのプラグインを開発したときにデバッグ対象としてwinamp.exeを設定していたので、正確にはどういうことを覚えていません。

あなたはそれが唯一のアセンブリコードを表示するソースファイルを持っていないが、あなたはまた、などのメモリ、レジスタ、

更新

の場合を検査することができますよう、それはまだ役に立つかもしれないので、ソースファイルのパスは、デバッグ情報でコンパイルしたときに実行可能ファイルに格納されるため、ソースを見渡せるはずです。

2

そのアプリケーション用のPDBシンボルがないと、何が起こっているのか、どこで何が起こっているのかを判断するのに苦労するでしょう。私は、ソースコード情報は誰でもそのアプリケーションを構築したときに作成されたPDBファイルにしか存在しないと思います。

これは、このアプリケーション用にPDBファイルが作成されたことを前提としています。これは、リリースモードのVC++プロジェクトのデフォルト設定ではありません。あなたが主張しているので、私はこれがデバッグ構成だと思いますか?

+0

答えをありがとう。私はデバッグ情報がバイナリに "組み込み"であったと仮定していましたが、それはGCCと同じです。 –

関連する問題