PRB: Can't find Installable ISAM When Run Two DB Apps in VB

Last reviewed: July 28, 1995
Article ID: Q112652
The information in this article applies to:

- Standard and Professional Editions of Microsoft Visual Basic for

  Windows, version 3.0

SYMPTOMS

The following error message occurs under the conditions listed below:

   Can't Find Installable ISAM

NOTE: If you are working with the Microsoft Access Version 2.0 Service Pack, you will receive Reserved Error (-1070).

A combination of the following conditions result in the error:

  • A Visual Basic application (.EXE) is executed that uses an IISAM driver.
  • The <appname>.INI file associated with the Visual Basic application includes a reference to only that IISAM driver.
  • A second Visual Basic application (.EXE) is executed that requires a different IISAM driver.

No matter what entries are in the second application's <appname>.INI file, the "Can't Find Installable ISAM" error occurs.

CAUSE

This behavior is by design in the Microsoft Access engine included in Visual Basic version 3.0 for Windows. The Microsoft Access engine is not currently designed to look for the new .INI file required by the second application. Instead, it is designed to use the established references that the first .INI file provided when the first Visual Basic application was executed. This design is under review for possible revision in future product versions.

WORKAROUND

To work around this limitation, place the entire Installable ISAMs section of the VB.INI file into the <appname>.INI file of each Visual Basic application that executes an IISAM driver.

The section in the <appname>.INI should look like this:

[Installable ISAMs] Btrieve=C:\WINDOWS\SYSTEM\btrv110.dll FoxPro 2.0=C:\WINDOWS\SYSTEM\xbs110.dll FoxPro 2.5=C:\WINDOWS\SYSTEM\xbs110.dll dBASE III=C:\WINDOWS\SYSTEM\xbs110.dll dBASE IV=C:\WINDOWS\SYSTEM\xbs110.dll Paradox 3.X=C:\WINDOWS\SYSTEM\pdx110.dll

MORE INFORMATION

Steps to Reproduce Behavior

TestApp1

  1. Start a new project in Visual Basic. Form1 is created by default.

  2. Add a Text Box (Text1) and a Data control (Data1) to the form.

  3. Set the Connect and DatabaseName properties of Data1 to connect to a Paradox 3.x database.

  4. Make an .EXE file, and call it TESTAPP1.EXE

  5. Using Notepad, create a text file called TESTAPP1.INI and in that file place the following:

    [Installable ISAMs] Paradox 3.X=C:\WINDOWS\SYSTEM\PDX110.DLL

  6. Place the file TESTAPP1.INI in your \WINDOWS subdirectory.

TestApp2

  1. Start a new project in Visual Basic. Form1 is created by default.

  2. Add a Text Box (Text1) and a Data control (Data1) to the form.

  3. Set the Connect and DatabaseName properties of Data1 to connect to a Btrieve database.

  4. Make an .EXE file, and call it TESTAPP2.EXE

  5. Using Notepad, create a text file called TESTAPP2.INI and in that

        file place the following:
    

        [Installable ISAMs]
        Btrieve=C:\WINDOWS\SYSTEM\BTRV110.DLL
    

  6. Place the file TESTAPP2.INI in your \WINDOWS subdirectory

  7. Run TESTAPP1. It should run with no problem.

  8. Next Run TESTAPP2 while TESTAPP1 is still running. You will receive

        the following error:
    

           Can't Find Installable ISAM
    


Additional reference words: 3.00
KBCategory: kbinterop kbprg kbprb
KBSubCategory: APrgDataIISAM


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: July 28, 1995
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.