2016-04-29 60 views
1

我有以下問題:假設你有一個可執行文件(的Program.exe),它讓你從CMD.EXE開始。所以,我們有附加WinDbg到過程

C:> start program.exe 

是否有可能將WinDbg附加到正在運行的進程program.exe?如果是的話,我該怎麼做到呢?可能嗎 ? 注意:當我讓program.exe啓動時,另一個命令行窗口打開,&關閉非常快。 WinDbg能抓住它嗎? 我試圖用Immunity Debugger來捕捉它,但沒有機會。

+2

爲什麼不直接從WinDbg啓動'program.exe'? –

+1

cmd/k windbg program.exe – blabb

+0

我應該將該命令寫入批處理文件嗎? – user3097712

回答

3

通常情況下,您可以附加到WinDbg中的進程F6或使用-pn命令行開關。如果過程終止得太快,有幾種選擇:

  1. 在調試器下運行該程序。使用Ctrl + E並輸入程序的名稱,參數和起始目錄。可替代地,指定可執行和參數作爲最後的參數的WinDbg:

    可執行

    指定的可執行過程的命令行。這用於啓動一個新的進程並對其進行調試。這必須是命令行上的最後一項。可執行文件名後面的所有文本作爲參數字符串傳遞給可執行文件。

  2. 創建一個註冊表項DebuggerImage File Execution Optionsdescribed on MSDN啓動調試器用於該程序的程序啓動

  3. 時自動如果程序是你的控制之下,插入一個DebugBreak()來電或同級(Sleep()getline())就在開始。