調(diào)試程序的時候,一般
1)啟動調(diào)試器,比如VC
2)在VC中設(shè)斷點
3)操作程序,使得程序運行到斷點,停下來
但是現(xiàn)在我遇到一個情況,希望調(diào)試的情景是這樣的:雙擊某個文件,我的程序啟動后,這個時候我想程序停下來,讓我在VC中調(diào)試它。
但是,雙擊文件后啟動的程序,是個獨立的exe運行程序,肯定不是在VC的運行控制下的,VC中設(shè)置的斷點不起作用的。怎么辦呢?
這個時候可以在想讓程序停下來的地方增加指令_asm int 3,debug下編譯好。雙擊文件后運行這個exe,在exe運行到_asm int 3時,就會中斷,而把當(dāng)前的exe運行與一個新的調(diào)試器(一個新的VC進程)結(jié)合起來。接下來就像一般的調(diào)試了。
這時的調(diào)試步驟類似與:
1)程序運行
2)遇到特定條件時,_asm int 3把當(dāng)前exe與一個新的調(diào)試器,比如一個新的VC進程,聯(lián)系起來
3)在調(diào)試器中調(diào)試exe
:)