Microsoft KB Archive/92953

= BUG: Stand-Alone Program Using Overlays & ISAM Hangs on Open =

PSS ID Number: 92953

Article Last Modified on 1/8/2003

-

The information in this article applies to:


 * Microsoft Visual Basic for MS-DOS 1.0

-



This article was previously published under Q92953



SYMPTOMS
When you create a stand-alone (compiled with the /o option) executable program that uses overlays and ISAM, your program hangs (stops responding to input) when it attempts to execute an ISAM open statement. However, when you compile the same program to use a runtime module (compiled without the /o option), the program runs correctly.



WORKAROUND
To work around the problem, specify the PROISAMD.LIB file in the objects section of the LINK command, as in this example:

LINK MODULE1.OBJ PROISAMD.LIB (MODULE2.OBJ);

This forces the linker to pull in all of the object code from the ProIsamD library, so it can run correctly as a standalone program.



STATUS
Microsoft has confirmed this to be a bug in the Professional Edition of Microsoft Visual Basic version 1.0 for MS-DOS. We are researching this problem and will post new information here in the Microsoft Knowledge Base as it becomes available.



MORE INFORMATION
If you want your program to use overlays and ISAM, you must compile your program without the /o option, so that your program requires a separate run- time module. The following example demonstrates the problem:   Type the following code into a source module called MODULE1.BAS: 'Module1.bas DECLARE SUB DOISAM CALL DOISAM   Type the following code into a source module called MODULE2.BAS: 'Module2.bas TYPE RECORDTYPE DUMMY as INTEGER END TYPE

SUB DOISAM PRINT &quot;BEFORE THE OPEN&quot; OPEN &quot;DATABASE&quot; FOR ISAM RECORDTYPE &quot;DBTABLE&quot; AS #1 PRINT &quot;AFTER THE OPEN&quot; 'This program hangs on the previous line. END SUB   Compile both modules from the MS-DOS prompt with the following commands: BC /o MODULE1.BAS; BC /o MODULE2.BAS;   Link the program: LINK MODULE1.OBJ+(MODULE2.OBJ);  Running this program causes your machine to hang when it encounters the ISAM open statement.</ol>

To make this program useable, remove the /o option from the compile line.

Additional query words: VBmsdos buglist1.00 1.00

Keywords: kbbug KB92953

Technology: kbAudDeveloper kbVB100DOS kbVBSearch kbZNotKeyword3

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© 2004 Microsoft Corporation. All rights reserved.