Here's a list of possibilities for you. It's easier to start at the top and work down, eliminating as you go
"Internal Consistency Errors" are usually caused by memory conflicts or corrupted files. You may want to try one of the following suggestions and see if you are able to resolve this situation:
1. If the .CDX file, of one of the Databases being used, is corrupted, the following steps will resolve this problem. a. From the MS-DOS prompt, enter the following command: RENAME <filename>.cdx <filename>.cbk b. From the command window in FoxPro enter the following command: USE <filename>.dbf c. Recreate the .CDX file. Follow similar steps with an .IDX file corruption. It has been reported that out of 25 odd tables 3 had corrupt indices and the problem went away when these were packed and reindexed.
2. If one of the .DBF files being used is corrupted, the following steps will resolve this problem. a. Restore the backup .DBF file if a backup was made, or if no backup file was created, go to step b. b. From the command window in FoxPro enter the following commands: USE <filename>.dbf \ COPY STRUCTURE TO test.dbf WITH CDX USE SELECT <an unused work area> USE test.dbf SELECT test.dbf APPEND FROM <filename>.dbf
3. If the FOXUSER.DBF file is corrupted, the following steps will resolve this problem: a. From the MS-DOS prompt, enter the following command: RENAME foxuser.dbf foxuser.dbk b. Restart FoxPro and a new FOXUSER.DBF file is automatically created by FoxPro.
4. In the case of a distributed application, the ESO or ESL files may be corrupted. Replace the support libraries to resolve this problem.
5. Perform a clean boot of your computer.
6. Disable any Video or System ROM (Read Only Memory) Shadowing.
7. Run the following command from the MS-DOS prompt: CHKDSK /F
8. Change the printer driver directly or edit GENPD.APP to use DRIVER.PRG instead of DRIVER2.PLB. (This will solve the problem only if DRIVER2.PLB is the only library file being used. If you are loading another library or a BIN routine, one of the remaining workarounds will be required.). To modify GENPD.APP to use DRIVER.PRG instead of DRIVER2.PLB, do the following: 8.1. Open the GENPD.PJX file in the GOODIES\PDRIVERS subdirectory. 8.2. Edit GEN_PD.PRG. 8.3. From the Edit menu, choose Find, and search for "DRIVER.PRG". 8.4. Delete the asterisk from the following line: * (_PDRIVER = "DRIVER.PRG"). 8.5. Comment out the IF..ENDIF statement following "* and make the lines below a comment" and before the ENDIF preceding the following: IF TYPE("_PDPARMS")..." 8.6. Close GEN_PD.PRG, saving the changes, and rebuild the project and application. (Note: Be sure to save GENPD.APP in the FOXPRO2 directory or in the directory returned by ?_GENPD.)
9.1. If running Windows, change your video driver to standard VGA. 9.2. Delete or rename CONFIG.FPW, FOXUSER.DBF, FOXUSER.FPT. Remove extra device drivers and TSRs in CONFIG.SYS and AUTOEXEC.BAT. (See How to Perform a Clean Boot) 9.3. Remove disk caches (both hardware and software). 9.4. Increase files the number of files: In CONFIG.SYS, FILES = statement In SHELL.CFG, FILE HANDLES = statement In AUTOEXEC.BAT, delete SHARE or add /F=5120 /L=500 to SHARE line. 9.5 Increase shell environment in CONFIG.SYS. 9.6. Run CHKDSK or SCANDISK (MS-DOS 6.2). 9.7 Place following command in AUTOEXEC.BAT: SET FOXPROW = -SAVEREGS 9.8 Increase the MEMLIMIT setting in CONFIG.FPW. For example, the following statement allocates 80 percent of your system's available memory to FoxPro with a minimum allocation of 4096K and a maximum of 8192K: MEMLIMIT = 80, 4096, 8192 9.9 Remove third-party fonts. MSDN KB ID: Q108717 9.10. If running Windows, exclude upper memory: In CONFIG.SYS, add x=a000-FFFF on the EMM386 line Issue WIN /D:X to start Windows 9.11 Use latest network drivers. 9.12. Use _SetHandSize() to set handle size. 9.13. Free all locked handles
Other pointers 10.1 Ensure that variable names in the REPORT FORM are not longer than eight characters. (Mark Yedinak)[compuserve]
10.2 "FoxTools.Fll and FoxW2600.Esl were installed in each application subdirectory. The problem would occur intermittently when the user started a new FoxPro app with another one already running. When we copied the two files into C:\WINDOWS and removed them from the app. subdirectories, the problem went away." (George Mouchet)[compuserve]
From: S Hassan [74241,612] [compuserve]
I went through the whole list and nothing worked but the most simple solution! The real cause of the problem was the settings of the Memlimit in config.fpw
It looks like the maximum amount of memory that FPW can handle is about 16 Megabytes. If more memory is alocated and there is a large set of data, some memory transgression occurrs. Since Windows 2000 manage the memory of applications, this error never occurred there.