gpt4 book ai didi

c - EnumWindows 和 CloseHandle

转载 作者:太空宇宙 更新时间:2023-11-04 05:40:47 26 4
gpt4 key购买 nike

我需要打电话吗 CloseHandle()EnumWindows() 返回的句柄上?

最佳答案

您只能在 kernel32 中的函数返回的句柄上使用 CloseHandle()。它们是引用计数的,关闭最后一个句柄会破坏对象。文件、互斥体、事件,诸如此类的对象。

窗口句柄不同,它们的生命周期由用户决定。或者在程序中显式调用 DestroyWindow()。您不想在枚举窗口时调用 DestroyWindow()。

GDI句柄还不同,它们通常有专门的释放函数。 CreatePen vs DeleteObject, GetDC vs ReleaseDC, CreateDC vs DeleteDC等等,有疑问的时候总是查阅对应的创建函数,看需要怎么重新释放。 SDK 文档从不跳过这一点。这是通过遗漏记录的,EnumWindows 文档没有说您需要释放句柄,所以您不需要。

所以没有。

关于c - EnumWindows 和 CloseHandle,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19620490/

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