The information in this article applies to:
SYMPTOMSIn Windows 95 and Windows 98, when calling PlayEnhMetaFile() with a non-NULL clipping region selected into the DC, GDI fails to free a copy of the clipping region it creates, thereby causing a memory leak. This leaked resource is a system resource and will not be freed when the application exits. CAUSE
When RestoreDC() is called, it copies the hMetaRgn value in the saved block
over the hMetaRgn value in the hDC. If the value in the save block is NULL
and the value in the hDC is not, the only reference to that region is lost
and the region is not freed. Instead, RestoreDC() should check for the
above case and free the region.
RESOLUTIONTo work around this problem, render the Enhanced Metafile (EMF) unclipped to a bitmap, and BitBlt() the image to the screen. STATUSMicrosoft has confirmed this to be a problem in the Microsoft products listed at the beginning of this article. MORE INFORMATIONSteps to Reproduce Problem
Additional query words: 4.00 kbdsi
Keywords : kbnokeyword kbSDKWin32 kbDSupport |
Last Reviewed: December 29, 1999 © 2000 Microsoft Corporation. All rights reserved. Terms of Use. |