图标句柄的生命周期从ExtractIconEx返回

zig*_*zig 0 winapi icons

我正在使用ExtractIconEx提取图标句柄(以后再使用它们):

ExtractIconEx("c:\\progra~1\\winzip\\winzip32.exe", 0, &hIconLarge, &hIconSmall, 1);
Run Code Online (Sandbox Code Playgroud)

我将句柄存储在一个对象中,然后使用图标句柄DrawIcon.当对象被释放时,我通过破坏两个句柄DestroyIcon.

我的问题:是否保证我的应用程序可以使用并拥有这两个句柄(因为它的整个生命周期),或者我应该CopyIcon用于此目的?

IIn*_*ble 5

ExtractIconEx的文档:

您必须通过调用DestroyIcon函数来销毁ExtractIconEx提取的所有图标.

这意味着,当你打电话时,生命终结DestroyIcon.换句话说,您拥有返回的图标ExtractIconEx.