BUG: Multiple Iterations of ACTIVATE POPUP Cause GP FaultLast reviewed: June 27, 1995Article ID: Q108718 |
The information in this article applies to:
SYMPTOMSPerforming many iterations of the ACTIVATE POPUP command in a loop causes an "Insufficient Memory" error to occur. In addition, the arrows in the scroll bars of the Command window may disappear and GDI memory will be exhausted.
CAUSEACTIVATE POPUP uses Window's graphic device interface (GDI) resources. DEACTIVATE POPUP does not release GDI resources. Once the GDI resources are exhausted, Windows will return an "Insufficient Memory" error message or may even cause a general protection (GP) fault. There is no set number of iterations of ACTIVATE POPUP that will trigger an "Insufficient Memory" message.
RESOLUTIONTo avoid the "Insufficient Memory" message, use a RELEASE POPUP <popupname> command after the DEACTIVATE POPUP <popupname>.
STATUSMicrosoft has confirmed this to be a problem in FoxPro versions 2.5, 2.5a, 2.5b, and 2.6 for Windows. We are researching this problem and will post new information here in the Microsoft Knowledge Base as it becomes available.
MORE INFORMATION
Steps to Reproduce ProblemWARNING: Close all running applications and save your data before running this code.
FOR pops = 1 TO 100 WAIT WINDOW "Popup Number "+LTRIM(STR(pops)) NOWAIT popname = "pop" + LTRIM(STR(pops)) DEFINE POPUP (popname) FROM 2, SCOL()/3 FOR bars = 1 TO 50 barname = "bar" + LTRIM(STR(bars)) DEFINE BAR bars OF (popname) PROMPT barname ENDFOR ACTIVATE POPUP (popname) NOWAIT DEACTIVATE POPUP (popname) ENDFOR |
Additional reference words: FoxWin 2.50 2.50a 2.50b buglist2.50
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |