Microsoft KB Archive/100030

From BetaArchive Wiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

PRB: midiInputHandler GP faults in MIDIMON Sample Application

Q100030



The information in this article applies to:


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





SYMPTOMS

In the MIDIMON sample application provided with Visual C++ and the Microsoft Windows Software Development Kit (SDK) version 3.1, the midiInputHandler() callback function causes a general protection (GP) fault.



CAUSE

The GP fault occurs when the MIDI event handler tries to store event data in a static variable, but the data segment (DS) is not set correctly because the exported functions in the callback dynamic-link library (DLL) are not exported correctly.



RESOLUTION

Because the /GD compiler option is specified in the makefile for MIDIMON's callback DLL, the DLL's exported functions must be declared with the __export keyword. The exported functions missing the __export keyword are _WEP(), midiInputHandler(), and PutEvent(). The __export keyword should be added as required in CALLBACK.H and CALLBACK.DEF.



MORE INFORMATION

The problem described above exists only in the version of MIDIMON distributed with Visual C++ (Microsoft C version 8.0); the original version distributed with C 7.0 builds correctly as shipped.

Additional query words: 3.10 gp-fault gpf midi

Keywords : kb16bitonly
Issue type :
Technology : kbAudDeveloper kbWin3xSearch kbSDKSearch kbWinSDKSearch kbWinSDK300 kbWinSDK310


Last Reviewed: November 5, 1999
© 2001 Microsoft Corporation. All rights reserved. Terms of Use.

Template:Microsoft KB Archive