2012-07-16 76 views
0

所以,我有一個可能是簡單的問題。首先我要注意的是,我是初學者在調試IDA的過程中,那麼請不要嘲笑我...首先調用DLL

我想調試windows服務,完全是svchost.exe。我用Windbg使用IDA。所以,我附加到適當的過程。我在右側窗口中看到特殊列表 - 我的進程使用了​​哪些dll文件。我的問題是:我怎麼才能知道 - 首先會用到什麼dll?我想添加一個斷點,但我不知道 - 在什麼功能我需要添加它...此過程在Windows 7中使用5355遠程端口,我發送一些數據到此端口,我希望看到我的數據...可能是有可能找出第一次使用的DLL。

我會感謝anybode的任何幫助或解釋。

+0

這是一個複雜的問題。當你附加到進程時,加載器必須已經創建它,所以靜態導入的所有DLL都已經加載了。這是在Windows之前的所有Win32子系統進程的'ntdll.dll'後跟'kernel32.dll'。從Windows 7,IIRC開始,他們改變了這個順序,但我認爲它不會影響你的情況。另外:http://whathaveyoutried.com ??? – 0xC0000022L 2012-07-16 16:05:31

回答

1

通過以下MS KB824344 http://support.microsoft.com/kb/824344,您可以告訴windows在啓動進程後立即連接調試器。查找名爲的部分配置一項服務,以附帶的WinDbg調試器開始。

+0

謝謝。我會嘗試使用Windbg來解決我的問題... – 2012-07-25 07:46:47