SAMPLE: DLL Installs an ISR That Can Signal an Application

ID: Q68560

The information in this article applies to:

SUMMARY

In the Microsoft Windows environment, an interrupt service routine (ISR) can communicate with an application. n ISR must be in a fixed code segment in a dynamic-link library (DLL) to ensure that the code is always in memory and available to service the interrupt. In Windows 3.1, an ISR that supports hardware should be in an installable device driver to enable Windows to disable the hardware when it switches between MS-DOS tasks.

HANDLER is a set of sample programs that demonstrate how to install an ISR, and have the ISR communicate with an application. The HANDLER DLL installs an ISR, which in turn uses the PostMessage function to notify the DEMO application (included with HANDLER) that an event has occurred. The ISR is chained to the keyboard interrupt vector, and the DEMO application maintains and displays a count of keyboard interrupts.

This sample program illustrates how an application can detect a hardware interrupt. This may be useful to a programmer trying to support a hardware device in the Windows environment.

HANDLER is one of the advanced samples provided with version 3.1 of the Microsoft Windows SDK. HANDLER can also be found in the Software Library.

MORE INFORMATION

The following file is available for download from the Microsoft Software Library:

 ~ HANDLER.EXE (size: 24014 bytes) 

For more information about downloading files from the Microsoft Software Library, please see the following article in the Microsoft Knowledge Base:

   ARTICLE-ID: Q119591
   TITLE     : How to Obtain Microsoft Support Files from
               Online Services

The Microsoft C Compiler and Microsoft Macro Assembler (MASM) are required to build the files in HANDLER.

Additional query words: softlib HANDLER.EXE

Keywords          : kbsample kb16bitonly kbWinOS310 kbWinOS300 
Version           : 3.00 3.10
Platform          : WINDOWS

Last Reviewed: December 12, 1998