Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Not enough memory to complete,, Err# 43
Message
From
21/02/2011 16:15:01
 
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Miscellaneous
Thread ID:
01500594
Message ID:
01501166
Views:
124
>Need a little help with this.
>
>I think what has probably happened is I have added some form or menu to my application that is "exhausting the heap memory".
>I am trying to find out which part that is? - It happens at customer sites that use the system alot, opening and closing all kinds forms and menus all over the place.
>
>So, I need to know if there is a way within VFP to extract the amount of Heap memory and hopefully Release it.
>The SYS(3050) you mentioned talks about Foreground / background memory.
>So, is SYS(3050)'s "Foreground" memory the same as the "Heap" memory ?
>
>Best solution would be to find a way to fix this Globally in VFP environment so that it somehow releases the Heap memory it has been hoarding ?
>
>The next best solution would be to have a way to Monitor the Heap memory usage externally, on customer machines to see which operation specifically causes the Heap memory hoardhing by VFP. But so far,
>
>1) The article in http://support.microsoft.com/kb/957235#appliesto link says;
>Problem only occurs if you have a popup with > 40 bars, and a bar over 40 has a popup associated
>** But I don't have a menu bar with 51 bars. That would be a very unusual application!
>
>2) Tried to install Microsoft's heapMonitor (dheapmon.exe), found a website that had it updated for Win7
>http://blog.airesoft.co.uk/2009/10/desktop-heap-monitor-vista-7/
>Followed instructions to the T, but it it hungup my win7 system. Head to cold boot.
>
>Trying to work around this known VFP Bug that has been there supposedly sinceVFP7. So, any ideas will be greatly appreciated.
>
>Cyrus
>
>>>All of a sudden we are getting the following error:
>>>
>>>"Not enough memory to complete this operations" - Error # 43
>>>(When trying to save an order).
>>>
>>>They also get the "Run Command Failed" error, when the application needs to run an external Executable.
>>>
>>>- What could be causing this ?
>>>
>>>- How can I check the amount of memory available in Windows ? (Not from VFP, but from the Windows Run command).
>>>And then find out what is occupying that memory space ?
>>>
>>>Any ideas would be appreciated.
>>>Thanks
>>
>>Test limiting memory with something like:
>>
>>= SYS(3050, 1, VAL(SYS(3050, 1, 0)) / 3)
>>= SYS(3050, 2, VAL(SYS(3050, 2, 0)) / 3)
>>
>>or specific:
>>
>>=SYS(3050, 1, 512*1024*1024)
>>=SYS(3050, 2, 512*1024*1024)
>>
>>see: http://msdn.microsoft.com/en-us/library/z5z3a4y8%28v=vs.80%29.aspx
>>
>>and after a command that does a lot of processing:
>>
>>= SYS(1104)
>>
>>There is also this bug:
>>http://support.microsoft.com/kb/957235#appliesto

It might be worth trying a couple of regular VFP fixes:

- Rename (or delete) your FOXUSER.* files so VFP can work with fresh ones

- Rebuild table indexes. REINDEX is not always good enough; a better way is to replace all your .CDX files with known good backups (even if they are out of date) and then issuing REINDEX. Or, you can DELETE TAG ALL then manually rebuild the tags. This latter approach might cause problems if the tables are in a DBC, that's why I prefer the replace from backup/REINDEX approach.
Regards. Al

"Violence is the last refuge of the incompetent." -- Isaac Asimov
"Never let your sense of morals prevent you from doing what is right." -- Isaac Asimov

Neither a despot, nor a doormat, be

Every app wants to be a database app when it grows up
Previous
Reply
Map
View

Click here to load this message in the networking platform