windows - DebugActiveProcessStop 是否关闭句柄?
问题描述
根据文档,将在和ContinueDebugEvent
之后关闭句柄。EXIT_THREAD_DEBUG_EVENT
EXIT_PROCESS_DEBUG_EVENT
在以下情况下,这些句柄会发生什么情况:
DebugSetProcessKillOnExit(FALSE); // Keep the process running after stopping the debugger.
DebugActiveProcessStop(dwProcessId);
进程和线程仍将运行,并且文档没有提及有关句柄的任何内容。我可以假设他们会为我关闭吗?
解决方案
是的,在通过调用实际停止调试之前DebugActiveProcessStop
调用。关闭所有打开的线程和进程句柄。它列出存储在线程中- 这意味着只能从调用其他调试 api(例如)的同一线程中进行调用。不幸的是,我也没有在文档中看到对此的确认,只有研究。这是win10的截图CloseAllProcessHandles
DbgUiStopDebugging
CloseAllProcessHandles
TEB
WaitForDebugEvent
推荐阅读
- python - 遵循 Odoo 教程 - 无处可去 - 似乎很正常
- php - 在 AWS 上运行 PHP 和 R
- reactjs - 在提交时使用成功或错误消息反应更新表单
- java - 从 ByteBuffer 中获取位
- java - 忽略拆分 \\w+ 上的点
- reactjs - Hooks:如何获取全局状态(this.state)?
- docusignapi - docusign 自定义连接器定价计划和 API 基本路径疑问
- powerbi - 如何在 DAX 中计算每日人口
- javascript - 使用 jquery 从数组中更新多选列表
- javascript - 我正在尝试确定变量是否与下拉框中选择的选项匹配。我怎样才能做到这一点?