TerminateProcess 后需要 CloseHandle 么?

walfud 2012-08-12 05:44:54
TerminateProcess 一个其它的进程, 需要显示在后面 CloseHandle 么?
为什么?
...全文
371 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
ruihong0417 2013-09-26
  • 打赏
  • 举报
回复
楼上说的对,就是这样的。
walfud 2013-09-26
  • 打赏
  • 举报
回复
是需要的, 句柄是当前进程的一个代表资源的索引, 它占了一个句柄表的位置, 所以即使该句柄所对应的资源已经失效了, 但是这句并还存在于当前进程的句柄表里, 所以是否 CloseHandle, 和句柄所代表的资源无关. 因此 如果使用 CreateThread 就需要 CloseHandle, 使用 _beginthread 则不用.
zara 2012-08-13
  • 打赏
  • 举报
回复
应该不需要了吧。TerminateProcess() 后,正常的话,进程都没了,相应的 Handle 当然就已经是无效的了,再 CloseHandle() 的话,应该会返回 ERROR_INVALID_PARAMETER 或类似的错误。
自己拿代码在调试软件里试一下就明白了。
Gloveing 2012-08-13
  • 打赏
  • 举报
回复
不用了。。。你都关闭那进程了,它的句柄什么的也会自动清理了

9,506

社区成员

发帖
与我相关
我的任务
社区描述
Windows专区 安全技术/病毒
社区管理员
  • 安全技术/病毒社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧