17638727142 发表于 2018-12-24 17:00:40

在任务管理器中看到的句柄和在创建窗口的时候的句柄有什么区别?

在任务管理器中看到的句柄和在创建窗口的时候的句柄有什么区别?为什么不一样?还有实例句柄和窗口的句柄有什么区别,,,好混啊,,,,

TyCk 发表于 2018-12-24 19:03:08

你的任务管理器的截图不全,列名称看不太清,但我觉得你箭头指的不是句柄,而是线程数。

零度非安全 发表于 2018-12-24 19:04:03

任务管理器不能显示句柄,只会显示进程 ID,进程 ID 和 进程句柄没关系,句柄这个值不是固定的,实例句柄是进程的,窗口句柄是窗口的,一个进程可能有多个窗口,需要多个窗口句柄来标识它,而启动一个应用程序就是一个进程,也可同时运行该应用程序的多份拷贝,即多个实例,实例句柄也就是用来标识它们的

17638727142 发表于 2018-12-24 19:46:35

TyCk 发表于 2018-12-24 19:03
你的任务管理器的截图不全,列名称看不太清,但我觉得你箭头指的不是句柄,而是线程数。

。。。。那个绝对是句柄,,,,,

17638727142 发表于 2018-12-24 19:47:34

TyCk 发表于 2018-12-24 19:03
你的任务管理器的截图不全,列名称看不太清,但我觉得你箭头指的不是句柄,而是线程数。

17638727142 发表于 2018-12-24 19:48:38

TyCk 发表于 2018-12-24 19:03
你的任务管理器的截图不全,列名称看不太清,但我觉得你箭头指的不是句柄,而是线程数。

这不就是句柄吗。。

17638727142 发表于 2018-12-24 19:49:55

零度非安全 发表于 2018-12-24 19:04
任务管理器不能显示句柄,只会显示进程 ID,进程 ID 和 进程句柄没关系,句柄这个值不是固定的,实例句柄是 ...

在任务管理器当中可以显示句柄啊。

TyCk 发表于 2018-12-24 20:36:16

17638727142 发表于 2018-12-24 19:48
这不就是句柄吗。。

啊,对的,如果是Handles那就是句柄了,还以为是图上是Threads呢。

17638727142 发表于 2018-12-24 20:44:21

TyCk 发表于 2018-12-24 20:36
啊,对的,如果是Handles那就是句柄了,还以为是图上是Threads呢。

我想问一下这里这个句柄和实例句柄并不一样啊,,,,,,,,,,,,,,,,,,,,,,,,,,

TyCk 发表于 2018-12-24 20:58:12

本帖最后由 TyCk 于 2018-12-24 21:02 编辑

17638727142 发表于 2018-12-24 20:44
我想问一下这里这个句柄和实例句柄并不一样啊,,,,,,,,,,,,,,,,,,,,,,,,,,

这里这个句柄应该是复数,也就是句柄数,应当是该程序下现有多少句柄,而非这个程序的句柄,可以类比线程数理解。
至于为啥这么说,因为我看了下,这个数字不是唯一的,有几个不同程序有相同的句柄数,如下图示例。


17638727142 发表于 2018-12-24 21:03:17

TyCk 发表于 2018-12-24 20:58
这里这个句柄应该是复数,也就是句柄数,应当是该程序下现有多少句柄,而非这个程序的句柄,可以类比线 ...

不不不,这里我百度了一下,那个句柄数是一个索引值,在Windows内部有一个句柄表,通过这个表索引就可以得到真正的内存地址

17638727142 发表于 2018-12-24 21:04:37

TyCk 发表于 2018-12-24 20:58
这里这个句柄应该是复数,也就是句柄数,应当是该程序下现有多少句柄,而非这个程序的句柄,可以类比线 ...

https://zhidao.baidu.com/question/83968487.html

TyCk 发表于 2018-12-24 21:18:00

本帖最后由 TyCk 于 2018-12-24 21:23 编辑

17638727142 发表于 2018-12-24 21:03
不不不,这里我百度了一下,那个句柄数是一个索引值,在Windows内部有一个句柄表,通过这个表索引就可以 ...

我之前也是查完才回答你的,但是百度的也不一定就是完全正确的。
句柄,确实是没有问题,但是这些回答没有涉及句柄数。

当然,我也没有办法肯定地告诉你是怎么样,但在这里,如果句柄数是这样理解的话,那应当是唯一值,但是这里有不同程序拥有相当的句柄数,这就有些问题。
还有一点,虽然这里翻译成了句柄,而不是句柄数,但是可以看到线程数同样是翻译成了线程,而非线程数,所以我仍然猜测句柄数是刚才提到的含义。

你可以自己再思考一下,或许你可以去msdn查一下有没有解释,我也不太了解这个东西。

零度非安全 发表于 2018-12-24 21:23:07

17638727142 发表于 2018-12-24 19:49
在任务管理器当中可以显示句柄啊。

这个不是句柄,这是句柄的数量

17638727142 发表于 2018-12-24 21:37:24

零度非安全 发表于 2018-12-24 21:23
这个不是句柄,这是句柄的数量

嗯嗯,,刚才看了一看Windows核心编程第五版 讲这一块的内容,,确实是句柄的数量

17638727142 发表于 2018-12-24 21:38:48

本帖最后由 17638727142 于 2018-12-24 21:39 编辑

TyCk 发表于 2018-12-24 21:18
我之前也是查完才回答你的,但是百度的也不一定就是完全正确的。
句柄,确实是没有问题,但是这些回答 ...

。。,我刚才看了看《Windows核心编程第五版》讲这一块的那个地方,在任务管理器内显示的那个的确是句柄的数量
页: [1]
查看完整版本: 在任务管理器中看到的句柄和在创建窗口的时候的句柄有什么区别?