加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

windows – 如何确定应用程序正在使用的窗口句柄数?

发布时间:2020-12-14 02:10:25 所属栏目:Windows 来源:网络整理
导读:确定应用程序使用的窗口句柄数的最佳方法是什么?我可以使用工具或WMI性能计数器吗? 我想运行一个应用程序并观察某种类型的计数器,并看到窗口句柄的数量正在增加. for (int i=0; i 1000; i++){ System.Threading.Thread.Sleep(1000); RichTextBox rt = new
确定应用程序使用的窗口句柄数的最佳方法是什么?我可以使用工具或WMI性能计数器吗?

我想运行一个应用程序并观察某种类型的计数器,并看到窗口句柄的数量正在增加.

for (int i=0; i < 1000; i++)
{
    System.Threading.Thread.Sleep(1000);
    RichTextBox rt = new RichTextBox();
    rt.Text = "hi";
    this.Controls.Add(rt);
}

我正在运行上面的代码并在进程中观察“Handle Count”计数器,并且它似乎没有增加.我有什么不正确的看法吗?

解决方法

您的计算机附带的Perfmon可以执行此操作.您还可以向任务管理器进程选项卡(处理计数)添加一列.

Perfmon说明

>添加一个计数器(点击)
>选择Performance对象下的Process
>在计数器列表下选择处理计数
>从实例列表中选择您的流程
>单击添加,单击关闭

要获取范围内的图形,您必须在列表中右键单击它,选择属性,然后选择正确的比例(.1或.01可能是正确的)

编辑(响应添加的信息):我认为您刚刚证明创建RichTextBox不会导致Handles被分配.我不认为它真的需要一个,直到你编辑控件,它可能足够聪明,因为为一个非活动的控件分配太多的资源将使得很难在一个控件上有很多控件表格(例如,考虑Excel).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读