BUG: VKD_API_Force_Key Can Cause Windows CrashLast reviewed: April 12, 1995Article ID: Q75940 |
The information in this article applies to:
SYMPTOMSWhen a Windows-based application calls the virtual keyboard device (VKD) service VKD_API_Force_Key to simulate keystrokes into a virtual 8086-mode MS-DOS session without requesting a simulated change in shift state, Windows crashes.
RESOLUTIONThis problem may be avoided by either of two methods:
STATUSMicrosoft has confirmed this to be a problem in Windows version 3.0. We are researching this problem and will post new information here as it becomes available.
MORE INFORMATIONThe remainder of this article describes the required changes to the VKD source code to enable this service to work correctly without requesting a change in the shift state. If VKD_API_Force_Key is called with DX set to -1 (which indicates that this API should not make a simulated change in shift state), the logic flow is such that the scan code (AL register) and the repeat count (ECX register) will not get initialized. This causes a keyboard hardware buffer overflow and a system crash. To correct this situation, make the following three changes to the VKD source module VKD.ASM, which is included with the Windows Device Development Kit (DDK) in the \VXD\VKD directory:
|
Additional reference words: 3.00
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |