gpt4 book ai didi

windows-7 - 如何深入了解创建句柄的代码

转载 作者:行者123 更新时间:2023-12-03 06:50:15 25 4
gpt4 key购买 nike

我知道如果我们提供 Handle.exe 的绝对路径,它将列出锁定该文件的所有进程。

F:\Softwares\Handle>Handle.exe  D:\Source\sample.dll

Handle v4.0
Copyright (C) 1997-2014 Mark Russinovich
Sysinternals - www.sysinternals.com

test1.exe pid: 9928 type: File 408: D:\Source\sample.dll
test2.exe pid: 10840 type: File 6A8: D:\Source\sample.dll
test3.exe pid: 15788 type: File 374: D:\Source\sample.dll
test4.exe pid: 10940 type: File 308: D:\Source\sample.dll
test5.exe pid: 15424 type: File 3FC: D:\Source\sample.dll
test6.exe pid: 10076 type: File 8AC: D:\Source\sample.dll

Windows 7 64 位

正如Handle.exe所述,我的sample.dll被6个不同的进程锁定。我想知道哪一行代码实际上保存了每个进程的sample.dll。我的任务是修复我庞大的应用程序中的句柄泄漏。所以我的问题并不固定于程序的特定部分。任务是我必须生成报告,其中包含句柄泄漏诊断创建者。泄漏并不特定于文件,它扩展到所有系统资源,如文件、注册表项、事件、信号量、线程...等。

我已经使用windbg进行了转储,但我找不到如何诊断转储文件,特别是句柄泄漏。在我大约半天的搜索中,找不到适合我的问题的好的教程或解决方案。

是否有任何命令行工具或任何其他工具可以回答我的问题。

最佳答案

您使用了错误的调试工具。您想阅读this article ,它详细介绍了如何使用 !htrace 获取泄漏句柄的堆栈跟踪。调试器命令。还涵盖 this existing所以问题。

您会经常看到“Windows 调试工具”。它不再是单独下载,而是包含在 Windows SDK 安装中。

关于windows-7 - 如何深入了解创建句柄的代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28450264/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com