FIX: ResetToDefault May Remove a Custom Method Completely (314646)



The information in this article applies to:

  • Microsoft Visual FoxPro for Windows 7.0

This article was previously published under Q314646

SYMPTOMS

The ResetToDefault method may remove a custom method completely, instead of resetting the method and removing just the code.

RESOLUTION

To resolve this problem, obtain the latest service pack for Visual FoxPro for Windows 7.0. For additional information, click the following article number to view the article in the Microsoft Knowledge Base:

316964 How to Obtain the Latest Visual FoxPro for Windows 7.0 Service Pack

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article. This problem was first corrected in Visual FoxPro for Windows 7.0 Service Pack 1.

MORE INFORMATION

Steps to Reproduce Behavior

  1. Run the following code from a program (.prg) file:
    LOCAL aobj[1]
    LOCAL xx As Form
    DELETE FILE testxx.sc?
    CREATE FORM testxx NOWAIT
    =ASELOBJ(aobj,1)
    xx = aobj[1]
    xx.AutoCenter = .t.
    xx.WriteMethod('click1',[WAIT WINDOW PROGRAM() time 1],.t.)
    
    KEYBOARD 'Y' CLEAR
    RELEASE WINDOW 'Form Designer'
    
    DO FORM testxx 
    testxx.click1
    testxx.Release 
    
    MODIFY FORM testxx NOWAIT 
    =ASELOBJ(aobj,1) 
    xx = aobj[1]
    * Uncomment the next line to set up conditions for a possible fatal error.
    * xx.ResetToDefault('click1')
    RETURN
    						
  2. In the Properties window, click the Methods tab. Find the Click1 method, right-click it, and select Reset to Default. The method will be removed from the form instead of being reset.

    If you uncomment the last line of the code above, you will see a stray entry in the Properties window, where the Click1 method should have been. If you double-click that entry, you receive the following error:
    Fatal error: Exception code=C0000005

Modification Type:MajorLast Reviewed:1/24/2002
Keywords:kbbug kbCodeSnippet kbDesigner kbDSupport kbvfp700fix KB314646