ID Number: Q60017
2.00
OS/2
Summary:
Occasionally, BIND.EXE version 1.20 gives errors such as the
following:
Import by ordinal not defined: VIOCALLDOS_netapKBDSETSTATUS
netapiMAILSLOTnetoem.1
The scrambled output is the result of mixing libraries that were
designed for versions of OS/2 other than 1.20. Generally, the
incorrect library is DOSCALLS.LIB, which is being pulled in by the C
5.10 compiler.
The easiest way to workaround this problem is to avoid DOSCALLS
completely. Use OS/2.LIB and API.LIB for OS/2 programs, and add
LAN.LIB and DOSLAN.LIB for network applications. Also, link the
application with the /NOD switch, so that any references to
DOSCALLS.LIB embedded in the .OBJ file are ignored by the linker.
Then, link the application with OS2.LIB. For example
LINK /NOD FILE.OBJ,,,LLIBCEP.LIB+OS2.LIB+LAN.LIB;
then:
BIND FILE.EXE C:\LIB\OS2.LIB C:\LIB\API.LIB C:\LIB\LAN.LIB
C:\LIB\DOSLAN.LIB
We recommend that you give complete paths to all of the libraries.