2012-03-05 15 views
1

Olly Debuggerでプログラムをデバッグしています。次のように実行しながら、例外ハンドラをインストールします。Ollyデバッガで例外を渡すことができません

push 004010a9 
xor eax, eax 
push dword ptr fs:[eax] 
mov dword ptr fs:[eax], esp 

ので、アドレス004010a9に位置例外ハンドラがインストールされました。以下に示すように

次の命令は、メモリアクセス違反をトリガ:

add eax, 40 
sub dword ptr ds:[00410000], eax 

コードは、コードセクションへの書き込み権限を持っていないので、それがメモリアクセス違反と停止をトリガします。

ここで、Shift + F9を押してプログラムに例外を渡すことができます。

ただし、を押すと何も起こらず、プログラムは一時停止状態のままです。以下に示すようにオリーデバッガで

004010a9 // exception handler installed above 
7c839aa8 // final exception handler 

私のデバッグオプションが設定されています:

例外]タブの下で、私がチェックしただけで、次のオプションがあり、以下に示すように、この時点で

マイSEHチェーンが見えます:

はKERNEL32でのメモリアクセス違反を無視し、私は以外にプログラムパス例外をしない理由を理解することができません

イオンハンドラは、現在のスレッド例外ハンドラであるため、Shift + F9を押すと004010a9に配置されます。

ありがとうございました。

答えて

0

check mark ignore the following exceptionsおよびまたは範囲のチェックボックス

clickボタンadd last exception

the list boxあなたがボタンを

press okをクリックした後filled with c0000005 access violationでなければなりません。別の例外がzeorこの手順で除算が再び

またはあなたがFFFFFFFF

に0のような完全な範囲を追加することができます行われなければならないと言う渡すようになりました

shift + f9 will only workをプログラムするsaid exceptionを渡すようにする

ollydbg is now setup

関連する問題