DOCUMENT:Q299799 29-AUG-2001 [foxpro] TITLE :FIX: Using Class w/ Same Name as a Base Class Causes Error PRODUCT :Microsoft FoxPro PROD/VER::6.0 OPER/SYS: KEYWORDS:kbOOP kbvfp kbvfp600 kbvfp600bug kbCodeSnippet kbvfp700fix kbvfp700 ====================================================================== ------------------------------------------------------------------------------- The information in this article applies to: - Microsoft Visual FoxPro for Windows, version 6.0 ------------------------------------------------------------------------------- SYMPTOMS ======== If you create a class by using the DEFINE CLASS command that has the same name as one of the Visual FoxPro (VFP) base classes, you receive the following error message when the class is instantiated: OLE error code 0x80020006: Unknown name. CAUSE ===== Custom classes cannot have the same name as base classes. If you try to compile the project into a dynamic-link library (DLL), you receive the following error message: Class name is invalid. STATUS ====== This problem was corrected in Visual FoxPro version 7.0 for Windows. MORE INFORMATION ================ Steps to Reproduce Problem -------------------------- Save the following code as a program, and then run the program: *!* Q299799 FIX: Creating A Class With The Same Name As A Base Class Causes Error LOCAL lcVar CREATE PROJECT oleclasstest NOWAIT lcVar = "DEFINE CLASS Column AS CUSTOM OLEPUBLIC" + CHR(13) + CHR(10) + ; " Test = ''" + CHR(13) + CHR(10) + "ENDDEFINE" =STRTOFILE(lcVar, 'Test.prg', .F.) _VFP.ACTIVEPROJECT.FILES.ADD('Test.prg') _VFP.ACTIVEPROJECT.BUILD('test.dll', 4) oObject = CREATEOBJECT('test.Column') CLEAR ? oObject.Test ? oObject.BASECLASS Additional query words: ====================================================================== Keywords : kbOOP kbvfp kbvfp600 kbvfp600bug kbCodeSnippet kbvfp700fix kbvfp700 Technology : kbVFPsearch kbAudDeveloper kbVFP600 Version : :6.0 Issue type : kbbug Solution Type : kbfix ============================================================================= THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY. Copyright Microsoft Corporation 2001.