Microsoft KB Archive/117560

{| = FIX: Index Tag on DELETED Causes "Bnormal Program..." =
 * width="100%"|

ID: Q117560

2.5x 2.6x | 2.5x 2.6x

MS-DOS   | WINDOWS The information in this article applies to:
 * Microsoft FoxPro for MS-DOS, versions 2.5x, 2.6x
 * Microsoft FoxPro for Windows, versions 2.5x, 2.6x

SYMPTOMS
If you are using the INDEX ON DELETED TAG command, subsequent operations cause "bnormal Program Termination - Memory Protection Fault" error messages in FoxPro for MS-DOS or general protection (GP) faults in FoxPro for Windows.

NOTE: The error message "bnormal Program Termination - Memory Protection Fault" is shown as it is displayed on the screen.

RESOLUTION
The errors will no longer occur if you remove the references to INDEX commands on the DELETED function.

STATUS
Microsoft has confirmed this to be a problem in the Microsoft products listed at the beginning of this article. This problem was corrected in Visual FoxPro 3.0 for Windows.

Steps to Reproduce Problem
Create and run a program that contains the following code:

CREATE TABLE dbfa (a1 C(10)) CREATE TABLE dbfb (b1 C(10)) CREATE TABLE dbfc (c1 C(10))

SELECT dbfc INDEX ON DELETED TAG deleted

FOR x=1 TO 200 INSERT INTO dbfa (a1) VALUES (STR(x)) ENDFOR

CLOSE DATABASES

USE dbfa IN 1 USE dbfb IN 2 USE dbfc IN 3

SET DELETED ON

SELECT DISTINCT a1 FROM dbfa ; WHERE NOT EXISTS (SELECT * FROM dbfb WHERE b1=a1) ; OR EXISTS (SELECT * FROM dbfc WHERE c1=a1) Additional reference words: FoxDos FoxWin VFoxWin 2.50 2.50a 2.50b 2.60 2.60a abnormal Fixlist3.00 errmsg err msg gpf buglist2.50 buglist2.50a buglist2.50b buglist2.60 buglist2.60a KBCategory: KBSubcategory: FxenvMemory Keywords         : kberrmsg FxenvMemory Version          : 2.5x 2.6x | 2.5x 2.6x Platform         : MS-DOS WINDOWS Solution Type    : kbfix
 * }