PRB: waveInMessage or waveOutMessage return MMSYSERR_INVALPARAM

ID: Q180580


The information in this article applies to:
  • Microsoft Win32 Software Development Kit (SDK), on platform(s):
    • Microsoft Windows 95


SYMPTOMS

When you call waveInMessage or waveOutMessage, you may receive an error code MMSYSERR_INVALPARAM, as defined in mmsystem.h.


CAUSE

Mmsystem performs range checking on the uMsg parameter passed to waveInMessage or waveOutMessage. If uMsg is not within the valid range for an IOCTL or MAPPER message, the function will fail.

The range checking is performed as follows:


  if ((uMsg < DRVM_IOCTL) || (uMsg >= DRVM_IOCTL_LAST) && (uMsg <
          DRVM_MAPPER))
         return MMSYSERR_INVALPARAM;

   DRVM_IOCTL, DRVM_IOCTL_LAST, and DRVM_MAPPER are defined in mmddk.h. 


RESOLUTION

When you call waveInMessage or waveOutMessage, make sure that the uMsg parameter is a valid IOCTL or MAPPER message.


STATUS

This behavior is by design.


REFERENCES

Win32 Software Development Kit for Windows 95 and Windows NT: waveInMessage; waveOutMessage

Windows 95 Device Driver Kit: multimedia drivers

Additional query words:

Keywords : MMWave
Version : WINDOWS:95
Platform : WINDOWS
Issue type : kbprb


Last Reviewed: January 13, 2000
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.