-1

私はWindowsでリバースエンジニアリングについて学んでいます。私はReverse Engineering and Function Calling by Addressに従っていた。私はそれらのソースデモをダウンロードしませんでした。私はちょっとC++コンソールを書いて、Ollydbgやxdbg64で自分自身をデバッグします。ちょうど窓のスタックの仕組みを知るために。Visual Studioからのexeファイルのアセンブリとシンボルがデバッグ用にビルドされなくなった

#include <Windows.h> 
#include <stdio.h> 

void __cdecl mySecretFunction(int * param1, const char *param2, 
    DWORD param3, BYTE param4) { 
    // Do somethng 
} 

int main() { 
    // Do somethng and call mySmySecretFunction() 
} 

私はenable /DEBUG and choose Debug on ConfigurationをAppプロパティページに持っています。

私はApp.exeを実行して正常に動作します。私はOllydbgでデバッグしますが、正常に実行できますが、both disassembly and symbol of the exe are gone or missingです。だから私はそれをデバッグできません。

私はビジュアルスタジオ2017で何をやるか/設定しなければならないので、Ollydbgやx64dbgのような外部デバッガで簡単なC++コンソールをデバッグできますか?

+0

私が知っていることはx64dbgは、Windows用デバッグツールだった、私はあなたがVSでx64dbgプラグインを作成する場合を除き、Visual Studioでそれを使用する方法を見つけていないということです。https://github.com/mrfearless/x64dbg -plugin-template-for-Visual-Studioまたはこのビデオのようにコンパイルする:https://vimeo.com/213004417。VSで1つのVC++アプリケーションをデバッグするだけであれば、実際の問題に関する詳細情報を提供できる方が良いでしょう。 VS ++のシンボルを取得する場合は、デバッグモジュールウィンドウを表示するか、ここでVSのhttps://msdn.microsoft.com/en-us/library/ms241613.aspxを表示できます。 –

+0

実際、私はこのhttps://www.codeproject.com/Articles/29527/Reverse-Engineering-and-Function-Calling-by-Addresに従います。しかし、私はそれからソースデモをダウンロードしていません。だから私は小さなC++のコンソールを書き留めて、それを自分自身で逆転させます。しかし、ありがとう@ JackZhai - MSFT。それはx64dbgのプラグインは私のために興味深いようだ、と私はVSからの最初のビューのデバッグモジュールを試してみます。ありがとうジャック。 –

+0

[デバッグモジュール]ウィンドウは、デバッグ時にデバッガがシンボルをVS IDEにロードしたかどうか/を共有します。とにかく最新の情報があれば、ここで共有してください。 –

答えて

0

次の手順では、Visual Studio 2017で私のために働い:

  1. 空のC++プロジェクトを作成します。
  2. 提供したソースコードを追加してください。
  3. プロジェクトのプロパティに移動し、デバッグを選択します。 c:\x64dbg\release\x96dbg.exeから
  4. 変更コマンド(に気づく)、これはあなたの実行可能なアーキテクチャに依存x32dbg.exeまたはx64dbg.exeを開始します。 $(ProjectPath)コマンドarg1 arg2の以前の内容である"$(ProjectPath)" arg1 arg2から
  5. 変更Command Argumentsコマンド引数の以前の内容です。
  6. デバッグなしでプログラムを起動して実行可能ファイルをデバッグします(Ctrl+F5)。いつものようにデバッガを起動するとx64dbg自体がデバッグされますが、これはおそらくあなたが望むものではありません。 x64dbgおよびVisual Studioとは実際の統合はありません

が、これは単に、Visual Studioのからアプリケーションをデバッグするために右引数とx64dbg始まり、あなたがより良い一度x64dbgでアプリケーションをロードし、手動でロードすることによって提供されるだろう低レベルのデバッグ用です。

0

olly-DBGでデバッグする場合は、デバッグモードを有効にしないでください。デバッグモードは、Visual Studioでのデバッグ用です。このモードでは変数の名前を見ることができ、行ごとにプログラムを実行することができます。 olly-DBGでは、ラインとバリエーションの名前は意味を持ちません。デバッグモードではコンパイルしない方が良いです。

あなたはwinmainでプログラムを一時停止しないであなたのコードbeacuaseを見ることができません。

option>Debugging option>Eventsに移動し、選択>はWinMain (if location is known)

Make first pause at:は、それはあなたを助けることを願っています。

関連する問題