一段挂起进程中所有线程的代码
生活随笔
收集整理的這篇文章主要介紹了
一段挂起进程中所有线程的代码
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
今天看書核心編程看到第7章,中的一段代碼很有意思,win7下對記事本進程進行測試,可以掛起,挺有意思的 //windows核心編程 第5版中的一段代碼
/*
函數功能:掛起進程中的所有線程
參數1:進程ID
參數2:若為TRUE時對進程中的所有線程調用SuspendThread,掛起線程若為FALSE時對進程中的所有線程調用ResumeThread,恢復線程
*/
VOID SuspendProcess(DWORD dwProcessID, BOOL fSuspend)
{HANDLE hSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPTHREAD, dwProcessID);if (hSnapshot != INVALID_HANDLE_VALUE) {THREADENTRY32 te = {sizeof(te)};BOOL fOk = Thread32First(hSnapshot, &te);for (; fOk; fOk = Thread32Next(hSnapshot, &te)){if (te.th32OwnerProcessID == dwProcessID) {HANDLE hThread = OpenThread(THREAD_SUSPEND_RESUME,FALSE, te.th32ThreadID);if (hThread != NULL) {if (fSuspend)SuspendThread(hThread);elseResumeThread(hThread);}CloseHandle(hThread);}}CloseHandle(hSnapshot);}
} ? ?
轉載于:https://www.cnblogs.com/zero5/p/3604029.html
總結
以上是生活随笔為你收集整理的一段挂起进程中所有线程的代码的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql触发器 实例_mysql触发器
- 下一篇: 全球与中国弹簧探针市场深度研究分析报告(