2017-10-01 6 views
1

WinDbgを使用してAdobe Acrobat Readerを分析すると、AcroRd32.exeと表示されます。私はどのモジュール(AcroRd32.exeと同じディレクトリにある.dllモジュール)にAcroRd.exeがロードされているのかを見たいと思います。lmコマンドで正しいモジュールが表示されない

私はWinDbgモニタリングを使用してPDFファイルを開き、lmコマンドを使用して、ロードされたモジュールを表示します。ただし、AcroRd32.exeと同じディレクトリを持つモジュール(.DLL)はありません。

AcroRd32.exeはこれらのDLLを使用していませんか?私の前提を確認するために、私はAcroRd32.exeと同じディレクトリにあるすべてのDLLファイルを削除しました。その後、AcroRd32.exeは正常に起動できません。つまり、これらのDLLはAcroRd32.exeに必要です。しかし、WinDbgのlmコマンドでこれらのDLLモジュールが表示されなかったのはなぜですか?

答えて

1

Acrobat Readerは別のインスタンスを開始します。あなたは、モジュールがロードされて見て2つ目のインスタンスをデバッグする必要があります。

ntdll!LdrpDoDebuggerBreak+0x2b: 
77e9db9b cc    int  3 
0:000> .childdbg 1 
Processes created by the current process will be debugged  
0:000> sxe cpr 
0:000> g 
[...] 
Executable search path is: 
ModLoad: 00c20000 00e45000 AcroRd32.exe 

この時点で、2番目のインスタンスが開始されようとしています。

1:010> g 
ntdll!LdrpDoDebuggerBreak+0x2b: 
77e9db9b cc    int  3 
1:010> g 

Acrobat Readerがロードされたときに、あなたが壊れた場合は、あなたが表示されます:

1:010> |0s 
0:000> lmf 
[...] 
No Adobe Acrobat Reader DLLs 
[...] 
0:000> |1s 
1:010> lmf 
[...] 
56910000 56961000 sqlite C:\Program Files (x86)\Adobe\Acrobat Reader DC\Reader\sqlite.dll 
56970000 569a4000 AXE8SharedExpat C:\Program Files (x86)\Adobe\Acrobat Reader DC\Reader\AXE8SharedExpat.dll 
569b0000 56a9c000 ACE  C:\Program Files (x86)\Adobe\Acrobat Reader DC\Reader\ACE.dll 
56aa0000 56d78000 CoolType C:\Program Files (x86)\Adobe\Acrobat Reader DC\Reader\CoolType.dll 
56d80000 56d9e000 BIB  C:\Program Files (x86)\Adobe\Acrobat Reader DC\Reader\BIB.dll 
56da0000 572c2000 AGM  C:\Program Files (x86)\Adobe\Acrobat Reader DC\Reader\AGM.dll 
[...] 

最初のインスタンスはのDLLは、Adobe Acrobatのディレクトリからロードされていませんが、もう一つはあります。

+0

お寄せいただきありがとうございます!あなたの答えは私を大いに助けました。私は別の問題を抱えています。時間があれば、それを解決するのを手伝ってもらえますか? https://stackoverflow.com/questions/46602166/windbg-how-to-control-mutil-process-debugging – xupeng

+0

答えが正しいと思われる場合は、その答えにチェックマークを付けて、他の人に問題が解決したことを知らせてください。私はあなたの新しい質問を見ていきます。 –

関連する問題