PRB: Cannot Load the Same Class Library More Than Once

Last reviewed: January 20, 1997
Article ID: Q156341
The information in this article applies to:
  • Microsoft Visual FoxPro for Windows, version 5.0

SYMPTOMS

Visual FoxPro version 5.0 does not allow you to load the same class library more than once, using the "SET CLASSLIB... ALIAS ... ADDITIVE" command.

WORKAROUND

If you want to load the same class library multiple times, you have to create multiple copies of the same class library in different directories and then load each one. Following is an example to do so:

   SET CLASSLIB TO

   **Make a temp directory in the HOME() directory**
   MD HOME()+'temp'

   **Copy the Class Library files to the temp directory**
   COPY FILE HOME()+'wizards\wizstyle.vc?' to HOME()+'temp\wizstyle.vc?'

   **Load First instance of the Class Library**
   SET CLASSLIB TO HOME()+'wizards\wizstyle' ALIAS one

   **Display the Class Library(ies) Loaded into memory**
   ?SET('CLASSLIB')
   **The above command will display the First Library**

   **Load second instance of the Class Library
   SET CLASSLIB TO HOME()+'temp\wizstyle' ALIAS two ADDITIVE

   **Display the Class Library(ies) Loaded into memory**
   ?SET('CLASSLIB')
   **The above command will display both instances of the library**

STATUS

This behavior is by design.

MORE INFORMATION

Steps to Reproduce Behavior

The following steps demonstrate that, although the second instance of the Class Library is opened using the ALIAS and ADDITIVE clause, the first instance of the same class is closed, and only the second instance of the Class remains loaded into memory:

  1. Issue the following commands from the Command window:

         SET CLASSLIB TO HOME()+ "Wizards\Wizstyle" ALIAS One
         ?SET("Classlib")
    

    The ?SET("Classlib") command displays the following:

         ..\Vfp\Wizards\Wizstyle.vcx ALIAS One
    

  2. Issue the following commands from the Command window:

         SET CLASSLIB TO HOME()+ "Wizards\Wizstyle" ALIAS Two ADDITIVE
         ?SET("Classlib")
    

    The ?SET("Classlib") command displays the following:

         ..\Vfp\Wizards\Wizstyle.vcx ALIAS Two
    


KBCategory: kbprg kbprb
KBSubcategory: FxprgClassoop
Additional reference words: 5.00 kbdse VFoxWin



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.

Last reviewed: January 20, 1997
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.