2

我想检测何时有人在不通知调试器的情况下终止了暂停的调试进程。(例如,到达控制台应用程序中的断点,然后关闭应用程序的控制台窗口。)该进程进入类似僵尸的状态,并且在调试器释放其保留之前无法进一步交互。

当通过 NtQueryInformationProcess 收集有关进程的信息时,此状态似乎设置了 PROCESS_EXTENDED_BASIC_INFORMATION::IsProcessDeleting 标志,但标志、结构和函数实际上都没有记录在 MSDN 上并标记为“不使用”。

测试这个标志可靠吗?我可以使用更好的“官方”API吗?

(是的,我知道 IsProcessDeleting 也会在进程正常关闭时(惊喜,惊喜)设置。从我的角度来看,这不是问题。)

4

1 回答 1

2

不,不是我能看到的。NtQueryInformationProcess 不会很快消失,如果该功能被删除,数百个应用程序将被它破坏。

于 2010-04-08T21:57:37.607 回答