INFO: FoxPro Header Check to Determine if Table is Corrupt (110968)



The information in this article applies to:

  • Microsoft Visual FoxPro for Windows 3.0
  • Microsoft FoxPro for Windows 2.5
  • Microsoft FoxPro for Windows 2.5a
  • Microsoft FoxPro for Windows 2.5b
  • Microsoft FoxPro for Windows 2.6
  • Microsoft FoxPro for MS-DOS 2.5
  • Microsoft FoxPro for MS-DOS 2.5a
  • Microsoft FoxPro for MS-DOS 2.5b
  • Microsoft FoxPro for MS-DOS 2.6
  • Microsoft FoxPro for Macintosh 2.5b

This article was previously published under Q110968

SUMMARY

When opening a database file (.DBF), FoxPro checks the header for the following five conditions that indicate corruption in a table:
  1. Is the record length invalid?
    • Record length <= 1
    • Record length > maximum record length
  2. Are there no fields?
  3. Are there more fields than permitted?
  4. Is the number of records < 0?
  5. Is the file size invalid?
    • (Start-of-data + the # of records) * rec. length > file size
    NOTE: Start-of-data is where the first byte of the first record begins.

Modification Type:MinorLast Reviewed:2/22/2005
Keywords:kbinfo KB110968