PRB: VB 4.0 16-Bit Add-ins Fail After Installing VB 5.0

Last reviewed: June 9, 1997
Article ID: Q169534
The information in this article applies to:
  • Microsoft Visual Basic Control Creation, Learning, Professional, and Enterprise Editions for Windows, version 5.0
  • Microsoft Visual Basic Professional and Enterprise Editions, 16-bit only, for Windows, version 4.0

SYMPTOMS

After Microsoft Visual Basic 5.0 is installed, any attempt to access Microsoft Visual Basic 4.0 16-bit Add-Ins on the same system causes the following error message to appear:

   "<Name of Add-In>' could not be loaded.
   Remove it from the list of available Add-Ins?"

CAUSE

This problem occurs because the new type information installed by Microsoft Visual Basic 5.0 is unreadable by 16-bit Microsoft Visual Basic 4.0.

RESOLUTION

By registering a .REG file, such as the one included below, you should be able to work around this problem.

Step By Step Example

  1. Open NotePad or any other text editor.

  2. Copy the following .REG file information into the new document. IMPORTANT NOTE: Due to the width constraints imposed by this article's format, the underscore character ("_") is used as a line continuation character when it appears at the end of a line. When the information below is copied into a text editor, the underscores at the end of the lines should be deleted and the lines which follow the underscores should be appended to the end of those lines. There are no leading or trailing spaces. For example, a line such as:

          [HKEY_CLASSES_ROOT\TypeLib\_
          {EF404E00-EDA6-101A-8DAF-00DD010F7EBB}
    

    Should be interpreted as:

          [HKEY_CLASSES_ROOT\TypeLib\{EF404E00-EDA6-101A-8DAF-00DD010F7EBB}
    

    Now copy the following information into your text editor: REGEDIT4

    ; Main VB5/VB4 IDE Extensibility Typelib Key ; [HKEY_CLASSES_ROOT\TypeLib\{EF404E00-EDA6-101A-8DAF-00DD010F7EBB}]

    ; VB4 Sub-Keys ; Information on 32-bit VB 4.0 below is important to keep if it is also ; installed on the machine. It is not necessary otherwise. ; [HKEY_CLASSES_ROOT\TypeLib\{EF404E00-EDA6-101A-8DAF-00DD010F7EBB}\4.0] @="Microsoft Visual Basic 4.0 Development Environment" [HKEY_CLASSES_ROOT\TypeLib\{EF404E00-EDA6-101A-8DAF-00DD010F7EBB}\4.0\0] [HKEY_CLASSES_ROOT\TypeLib\{EF404E00-EDA6-101A-8DAF-00DD010F7EBB}_

           \4.0\0\win16]
    
    @="C:\\Program Files\\Visual Basic4\\16-bit\\vbext.olb" [HKEY_CLASSES_ROOT\TypeLib\{EF404E00-EDA6-101A-8DAF-00DD010F7EBB}_

           \4.0\0\win32]
    
    @="C:\\Program Files\\Visual Basic4\\32-bit\\vbext32.olb" [HKEY_CLASSES_ROOT\TypeLib\{EF404E00-EDA6-101A-8DAF-00DD010F7EBB}\4.0\_ FLAGS] @="0" [HKEY_CLASSES_ROOT\TypeLib\{EF404E00-EDA6-101A-8DAF-00DD010F7EBB}\4.0\_ HELPDIR] @="C:\\Program Files\\Visual Basic4\\16-bit"

    ; VB5 Sub-Keys ; [HKEY_CLASSES_ROOT\TypeLib\{EF404E00-EDA6-101A-8DAF-00DD010F7EBB}\5.0] @="Microsoft Visual Basic 5.0 Extensibility" [HKEY_CLASSES_ROOT\TypeLib\{EF404E00-EDA6-101A-8DAF-00DD010F7EBB}\5.0\0] [HKEY_CLASSES_ROOT\TypeLib\{EF404E00-EDA6-101A-8DAF-00DD010F7EBB}_

           \5.0\0\win16]
    
    @="C:\\Program Files\\Visual Basic4\\16-bit\\VBEXT.OLB" HKEY_CLASSES_ROOT\TypeLib\{EF404E00-EDA6-101A-8DAF-00DD010F7EBB}\5.0\0\_ win32] @="C:\\Program Files\\DevStudio\\VB5\\VB5EXT.OLB" [HKEY_CLASSES_ROOT\TypeLib\{EF404E00-EDA6-101A-8DAF-00DD010F7EBB}\5.0\_ FLAGS] @="0" [HKEY_CLASSES_ROOT\TypeLib\{EF404E00-EDA6-101A-8DAF-00DD010F7EBB}\5.0\_ HELPDIR] @="C:\\Program Files\\DevStudio\\VB5"

    ; Additional Visual Basic 4.0 Sub-Key. ; Because this is the highest version, the 16-bit IDE will use it. ; Information on 32-bit Visual Basic 4.0 below is important to keep if ; it is also installed on the machine. It is not necessary otherwise. ; [HKEY_CLASSES_ROOT\TypeLib\{EF404E00-EDA6-101A-8DAF-00DD010F7EBB}\99.0] @="Microsoft Visual Basic 4.0 Development Environment" [HKEY_CLASSES_ROOT\TypeLib\{EF404E00-EDA6-101A-8DAF-00DD010F7EBB}_

           \99.0\0]
    
    [HKEY_CLASSES_ROOT\TypeLib\{EF404E00-EDA6-101A-8DAF-00DD010F7EBB}_

           \99.0\0\win16]
    
    @="C:\\Program Files\\Visual Basic4\\16-bit\\vbext.olb" [HKEY_CLASSES_ROOT\TypeLib\{EF404E00-EDA6-101A-8DAF-00DD010F7EBB}_

           \99.0\0\win32]
    
    @="C:\\Program Files\\Visual Basic4\\32-bit\\vbext32.olb" [HKEY_CLASSES_ROOT\TypeLib\{EF404E00-EDA6-101A-8DAF-00DD010F7EBB}\99.0\_ FLAGS] @="0" [HKEY_CLASSES_ROOT\TypeLib\{EF404E00-EDA6-101A-8DAF-00DD010F7EBB}\99.0\_ HELPDIR] @="C:\\Program Files\\Visual Basic4\\16-bit"

    ;End Reg File

  3. All occurrences of the following text strings within the document must be replaced with the correct path strings. Make sure that the double back slash "\\" is used to delimit each folder.

       Replace This                      With This
       ------------------------------------------------------------------------
       C:\\Program Files\\DevStudio\\    <Your Path to Visual Basic 5.0>
          VB5
       C:\\Program Files\\               <Your Path to Visual Basic 4.0 32-Bit>
          Visual Basic4\\32-bit
       C:\\Program Files\\               <Your Path to Visual Basic 4.0 16-Bit>
          Visual Basic4\\16-Bit
    
    

  4. Save the file as text with a .REG extension, i.e. VBFIX.REG.

  5. Open Microsoft Windows Explorer, locate and double-click the .REG file to register the proper entries in the Windows Registry.

STATUS

Microsoft is researching this problem and will post more information here in the Microsoft Knowledge Base as it becomes available.

MORE INFORMATION

Steps to Reproduce Behavior

  1. On a machine with 16-bit Microsoft Visual Basic 4.0 installed, install an edition of Microsoft Visual Basic 5.0.

  2. Start 16-bit Visual Basic 4.0.

  3. Select Add-In Manager from the Add-Ins Menu.

  4. Choose any Add-In by clicking its check box.

  5. Choose OK. After choosing OK, the error described at the beginning of this article will occur.


Keywords : kberrmsg vb416 vb4win vb5all VBKBAddin VBKBEnv VBKBRegistry VBKBVB kbprb
Version : 4.0 5.0
Platform : WINDOWS
Issue type : kbprb


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: June 9, 1997
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.