我有一个是每次调用CreateFile不同的物理装置上的路径通过一个循环(即\。\ PhysicalDrive1,然后\。\ PhysicalDrive2,...)通过PInvoke的,然后使用返回的句柄做一些一些C#代码其他低级别窗口的东西。在循环结束时它在手柄上调用CloseHandle的。

在调试我注意到,在手柄的int值是一样的每次通过循环。我可以看到这是两种预期(窗口只是重复使用手柄)或意外(手柄,警方没有公布最后一关)。

所以,我只是想验证这是否是预期的(或至少没有不正确的)行为。

有帮助吗?

解决方案

一个手柄只是一个索引到一些进入一些表在内核。如果您要打开和关闭重复的句柄,这是完全有可能它来获取表完全相同的条目,并因此具有相同的指数。

请注意,这是实现特定的,可与任何新发布的服务包或QFE改变。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top