呼叫windowsapi debugactiveprocessstop 停止偵錯程式除錯指定的程序
bool debugactiveprocessstop
( dword dwprocessid
);
引數程序id 可以在偵錯程式建立程序時呼叫 createprocess 的最後乙個引數 lpprocessinformation 中記錄
建立完成除錯程序後,別忘記呼叫 closehandle 關閉 lpprocessinformation 中的 程序與執行緒控制代碼
bool createprocessw
( lpwstr lpcommandline,
lpsecurity_attributes lpprocessattributes,
lpsecurity_attributes lpthreadattributes,
bool binherithandles,
dword dwcreationflags,
lpvoid lpenvironment,
lpcwstr lpcurrentdirectory,
lpstartupinfow lpstartupinfo,
lpprocess_information lpprocessinformation);
typedef
struct _process_information process_information,
*pprocess_information,
*lpprocess_information;
拆離偵錯程式與被除錯程序別忘記修復斷點,呼叫 continuedebugevent 繼續執行被除錯執行緒
bool continuedebugevent
( dword dwprocessid,
dword dwthreadid,
dword dwcontinuestatus
);
windows預設偵錯程式退出時終止被除錯程序,
我們可以呼叫 debugsetprocesskillonexit 引數傳入false,來修改偵錯程式退出時要執行的操作
可以多次呼叫此函式以根據需要更改操作
bool debugsetprocesskillonexit
( bool killonexit
);
killonexit 如果為true,則執行緒將在退出時終止所有附加程序(請注意,這是預設設定);
killonexit 如果為false,執行緒將與退出時正在除錯的所有程序分離。
被除錯程序只有與被除錯程序拆離後,才可以正常的結束
呼叫 terminateprocess 終止指定的程序及其所有執行緒
bool terminateprocess
( handle hprocess,
uint uexitcode);
/* 例:*/
terminateprocess
(openprocess
(process_all_access, false, pid),0
);
python的偵錯程式 Python 偵錯程式入門
python 生態系統包含豐富的工具和庫,可以讓開發人員更加舒適。例如,我們之前已經介紹了如何使用互動式 shell 增強 python。本文重點介紹另一種可以節省時間並提高 python 技能的工具 python 偵錯程式。python 偵錯程式 python 標準庫提供了乙個名為 pdb 的偵錯...
GDB偵錯程式與Core dump
gdb是unix linux下的一款基於命令列的程式除錯工具,其簡單的命令和強大的功能是眾多開發者喜歡的理由,搭配core dump對乙個程式進行追蹤則更能夠大顯身手。乙個程式如果想使用gdb除錯,則需要在編譯過程中加入除錯資訊。命令如下 gcc g filename.c o filename 使用...
偵錯程式的原理
偵錯程式和被除錯程式是通過中斷系統來實現的.不過在windows下,這些工作都不需要你來做了.windows封裝了一套完整的除錯介面.你只要建立乙個偵錯程式,用它開啟 或建立 乙個被除錯程序,然後根據除錯的目標中所包含的除錯資訊找出源 與機器碼之間的對映關係.在你要中斷的地方加 乙個int3指令 並...