ID Number: Q11689
2.00 3.00
WINDOWS
SYMPTOMS
If program A passes the handle of its own icon to program B
and if A then terminates, B cannot continue to use the icon handle
safely. If this icon is discardable, Windows cannot reload the icon
properly if B tries to use it after A terminates.
CAUSE
Icons are resources, resources are segments, and segments are
global memory blocks. Global memory blocks are not equivalent to
task handles; if a segment is discarded, Windows invalidates the
handle.
RESOLUTION
One alternative to passing the icon data handle is to use a
shareable library or a property list for managing of data handles. Be
careful, however. Other applications can use only shared, global
memory handles, such as GDI drawing objects. Applications share global
memory handles through the Windows clipboard. Local memory handles
cannot be shared.