Microsoft KB Archive/163037

= FIX: Label Properties Cause Illegal Operation =

Article ID: 163037

Article Last Modified on 10/16/2002

-

APPLIES TO


 * Microsoft Visual FoxPro 5.0 Standard Edition
 * Microsoft Visual FoxPro 5.0a

-



This article was previously published under Q163037



SYMPTOMS
Running a program that instantiates a form containing a label that has properties of Autosize and WordWrap together causes a stack fault.

In Windows 95, the message shows a dialog box with Visual FoxPro as its title saying the following:

This Program has performed an illegal operation and will be shut down.

The Details button opens a message saying the following:

VFP caused a stack fault in module VFP.EXE.

In Windows NT, the message is in a Dr. Watson dialog box and says the following:

An application error has occurred and an application error log is being generated. VFP.exe - Exception: stack overflow [0xc00000fd]. Address<...>.

After the error message appears, VFP shuts down.



RESOLUTION
The error does not occur if the label properties include either AutoSize or WordWrap, but not both.



STATUS
Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article. This has been corrected in Visual FoxPro 6.0.



MORE INFORMATION
The same error may occur from a label on a form generated by the Form Builder. The workaround in that situation is different. For more information on that form of the problem, please see the following article in the Microsoft Knowledge Base:

162253 PRB: Form Builder Form Causes Illegal Operation

Steps to Reproduce Behavior
Copy the following code into a program named LabelTest.prg, then run the program:

********************************************************  *- LabelTest.prg *- A program to demonstrate the effect of combining the *- Autosize and WordWrap properties on a label. ********************************************************  PUBLIC x   x=CREATEOBJECT("Form") x.AddObject("mylabel","test") x.Visible=.t.

DEFINE CLASS test AS label AutoSize = .T.    WordWrap = .T.

PROCEDURE Init LOCAL lcTest,lcname lcname=THIS.NAME+"A" && Get a unique name THIS.PARENT.ADDOBJECT(lcname,'label') lcTest=lcname

WITH THIS.PARENT.&lcTest .AUTOSIZE=THIS.AUTOSIZE .WORDWRAP=THIS.WORDWRAP  && Comment this line for success. .VISIBLE=.T.      ENDWITH ENDPROC ENDDEFINE

Additional query words: kbvfp600fix

Keywords: kbbug kbfix kbprogramming KB163037

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.