The information in this article applies to:
SYMPTOMS
If a Visual Basic 5.0 application attempts to load a 32-bit generic thunking DLL, it might not run properly on a multiprocessor computer.
CAUSE
For a 32-bit program to map a 32-bit generic thunking DLL into its address space, you must also map the Windows NT Virtual DOS Machine (NTVDM.EXE) into the address space. The Visual Basic 5.0 Runtime Library, MSVBVM50.DLL, collides with NTVDM.EXE. Both MSVBVM50.DLL and NTVDM.EXE are based at 0x0F000000.
Q199671 Relocation of NTVDM.EXE fails on multiprocessor machines RESOLUTIONA 32-bit generic thunking DLL should be loaded by a 16-bit program only. The loading of a 32-bit thunking DLL into the address space of a 32-bit process is unsupported. STATUSThis behavior is by design. MORE INFORMATIONWhen a Visual Basic 5.0 application makes a call to a function in a 32-bit generic thunking DLL on a multiprocessor computer, the call fails. A query of Err.LastDllError returns the error code 998 "Invalid access to memory location" (ERROR_NOACCESS). Additional query words:
Keywords : kbDLL kbKernBase kbVBp500 |
Last Reviewed: February 5, 1999 © 2000 Microsoft Corporation. All rights reserved. Terms of Use. |