Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Chriss Miller on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Insufficient memory error in Windows NT

Status
Not open for further replies.

gdwood

Programmer
Jun 18, 2001
76
US
I'm getting an insufficient memory error while running a stand alone application in NT 4.0. I receive the error when populating an array from a field in a table. The applicaiton worked fine in 3.1, and is now causing problems. Any solutions?
 
HI,
1. If you have an ICON on the desktop,
Select this Icon
Right Click on the mouse
Select Properties
There will be a Memory TAB
and in this TAB select HMA as AUTO if this is none.

2. May be this is not available on the ICON (because it depends on the way you created the shortcut).. in which case, Browse using explore and reach the application
Now high light this application and Right Click on the mouse. Now do the same above suggestion.

This shall solve your problem.

ramani :-9
(Subramanian.G)
FoxAcc
ramani_g@yahoo.com
LET KNOW IF THIS HELPED. ENOUGH EXPERTS ARE HERE TO HELP YOU OUT! BEST OF LUCK :)
 
Previously, I would have recommended you to read "Insufficient Memory in FoxPro for Windows on Fast Computers", at - unfortunately MS killed this article off early in 2000 (they really don't want to support FPW any more). [See Article quoted below thanks to Cindy].

While some or the problems can't be fixed (Filer e.g.), there are workarounds for most of the others. e.g. The listbox problem can be fixed, in some cases, by using the ideas in Paul Lee's FPWListBox file at
Rick

"Cindy Winegarden" wrote in message news:3a69955c@news.devx.com...
> Here's the text of the article:
> -------------
> PRB: Insufficient Memory in FoxPro for Windows on Fast Computers
> Last reviewed: January 8, 1998
> Article ID: Q171047
> The information in this article applies to:
> Microsoft FoxPro for Windows, versions 2.6 & 2.6a
>
> SYMPTOMS
> Working programs in FoxPro 2.x fail with "Insufficient Memory" when run on
> newer, faster computers with clock speeds greater than 150 MHz. This
problem
> applies to both screens with list boxes and queries, but this article
> addresses only the problem with FoxPro screens.
>
> The "Insufficient Memory" error message may also occur while in Filer when
> changing to a local(not network) directory which contains a large number
of
> files.
>
> The failure also happens on both MMX and non MMX Computers. The operating
> system could be Windows 3.x, Windows for Workgroups 3.x, Windows 95 or
> Windows NT. This error does not occur in FoxPro For MS-Dos.
>
> CAUSE
> The current fast computers were not available for testing when FoxPro 2.x
> for Windows was initially released. Microsoft FoxPro for Windows, 2.x does
> not always work with list boxes populated from tables with more than 600
> records.
>
> RESOLUTION
> At this time Microsoft does not have a good workaround; however, the
> following are options to consider:
>
> Upgrade the application to Visual FoxPro 3.0 or 5.0.
>
> Turn off either CMOS cache (slow) or CMOS turbo mode (very slow).
>
> Reduce the number of records to be displayed in the ListBox (under 600).
>
> Run the FoxPro applications (app) and executables (exe) on a slower
> computer.
>
> Using an array as the source of the list items in the list box is the best
> resolution for this problem. To change the screen created in the Steps to
> Reproduce Behavior section below, follow these steps.
>
> a. In the Setup Code for the screen, add the following command:
>
> COPY TO ARRAY aTableField FIELDS charval
>
> b. Double click the listbox on the screen while in design mode.
> In the List dialog box that appears, change the List Items to
> From Array and put aTableField in for the array name. Choose Ok.
>
> c. Save and generate the screen.
>
> d. Although this shouldn't be necessary, it has been reported that
> the array needs to be released when the screen is closed. To do
> this, add the following command to the Cleanup Code of the
screen:
>
> RELEASE ALL LIKE aTableField
>
> Along with the steps listed above, some users have found that adding the
> following line to the Config.fpw file helps to solve the problem:
>
> MEMLIMIT = 60,2048,4098
>
> STATUS
> Microsoft is researching this problem and will post new information here
in
> the Microsoft Knowledge Base, as it becomes available.
>
> MORE INFORMATION
> Use the Microsoft Knowledge Base at to
> troubleshoot other potential causes of "Insufficient memory" errors.
Verify
> that the error is due to the processor speed by trying the code on both a
> fast and slow computer.
>
> Steps to Reproduce Behavior
> The following is a reproducible case where FoxPro for Windows 2.x fails
with
> "Insufficient memory" with a list box on a screen.
>
> Place the following code in a new program file. Save it as LarTable.prg:
>
> * Sample code to create and populate a large table to test your
> * program.
>
> * Environment area.
> CLEAR
> CLOSE DATABASES
> CLEAR SCREEN
>
> * Create a large table
> CREATE TABLE LarTable (CharVal C(20), NumVal N(9))
> USE LarTable.DBF
>
> * NumRecords = the number of record to be put in the table.
> NumRecords= 2000
>
> * Note using larger numbers can take a long time.
> NumWide = LEN(ALLTRIM(STR(NumRecords)))
>
> * FOR LOOP to fill the table.
> FOR x = 1 TO NumRecords
> CharString="Record" + ;
> PADL(ALLTRIM(STR(x,numwide,0)),NumWide,"0")
> INSERT INTO LarTable (CharVal,NumVal) VALUES(CharString, x)
> ? RECNO()
> ENDFOR
>
> CREATE SCREEN LarTable.scx NOWAIT
>
> Add a ListBox object from the toolbar on the left of the screen.
>
> Select the "From Field" radio button and type LarTable.Charval in the
Field
> dialog box.
>
> Type "MyList" in the Variable text box. Click OK to close the dialog box.
> Resize the ListBox, if necessary.
>
> Add a Push Button. Use "Close" as the prompt, Check the "Terminate READ on
> Selection" check box. Enter "xyz" for the variable.
>
> Generate and run the LarTable.spr screen. It should run without error on
> computers slower than a 166 MHz computer.
>
> It should fail with an "Insufficient Memory" error on most computers 166
MHZ
> or faster. Use "mybutton" as the variable prompt.
>
> The code generally fails when the screen loads on faster machines. This
> problem happens only when the table contains more than about 600 records.
> Try deleting all but the first 600 records:
>
> DELETE ALL FOR RECNO > 600
>
> (c) Microsoft Corporation 1997, All Rights Reserved. Contributions by Mike
> Fernald, Microsoft Corporation
> -------------------
>
> Additional query words: foxwin fpw MMX
> Keywords : FoxWin FxenvGeneral kbbuglist
> Version : WINDOWS:2.6a
> Platform : WINDOWS
> Issue type : kbprb
>
> THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS
IS"
> WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER
> EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND
FITNESS
> FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS
> SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT,
> INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES,
EVEN
> IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE
> POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR
> LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE
> FOREGOING LIMITATION MAY NOT APPLY.
>
> Last reviewed: January 8, 1998
> © 1998 Microsoft Corporation. All rights reserved. Terms of Use.
> ---- end of article ___
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top