Using NetBIOS Interrupts Under Windows

Last reviewed: July 22, 1997
Article ID: Q23033
3.00 3.10 WINDOWS kbnetwork kbprg

The information in this article applies to:

  • Microsoft Windows Software Development Kit (SDK) for Windows versions 3.0 and 3.1

SUMMARY

The Windows SDK API NetBIOSCall() is provided as an interface for application developers using network communication protocols.

MORE INFORMATION

The NetBIOSCall() translates to an interrupt 5Ch call and is handled by the Virtual NetBIOS driver under 386 enhanced mode Windows or by the MS-DOS Extender (DOSX.EXE) under standard mode.

The interface provides for both synchronous and asynchronous NetBIOS commands.

When asynchronous commands are used, there are two rules that an application developer must follow:

  • The POST routine provided to the network control block (NCB) MUST be in a fixed code segment in a DLL (dynamic-link library).

    This is necessary because the asynchronous event could complete while a BIOS operation is in progress. Because the BIOS is used to reload segments, if the event occurred while in the BIOS, it would not be possible to reload a not-present segment. A FIXED code segment in a DLL remains fixed and page-locked in memory at all times.

  • The NCB and associated read or write buffer for asynchronous commands must be allocated as GMEM_FIXED from within a DLL. This ensures that the buffers will be page-locked.

It is recommended that synchronous commands not be used if a comparable asynchronous command is available. Synchronous NetBIOS() commands cause the entire Windows system to halt until the command completes.


Additional reference words: 3.00 3.10
KBCategory: kbnetwork kbprg
KBSubcategory: NtwkNetBios
Keywords : kb16bitonly


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