mixerSetControlDetails  LJTTR_ 

The mixerSetControlDetails function sets properties of a single control associated with an audio line.

MMRESULT mixerSetControlDetails(

    HMIXEROBJ hmxobj,

 

    LPMIXERCONTROLDETAILS pmxcd,

 

    DWORD fdwDetails

 

   );

 

 

Parameters

hmxobj

Handle of the mixer device object for which properties are being set.

pmxcd

Address of a MIXERCONTROLDETAILSJ32N6T structure. This structure is used to reference control detail structures that contain the desired state for the control.

fdwDetails

Flags for setting properties for a control. The following values are defined:

MIXER_OBJECTF_AUX

The hmxobj parameter is an auxiliary device identifier in the range of zero to one less than the number of devices returned by the auxGetNumDevs9HC3JZ function.

MIXER_OBJECTF_HMIDIIN

The hmxobj parameter is the handle of a MIDI input device. This handle must have been returned by the midiInOpenFUXRPR function.

MIXER_OBJECTF_HMIDIOUT

The hmxobj parameter is the handle of a MIDI output device. This handle must have been returned by the midiOutOpen1UBKBTS function.

MIXER_OBJECTF_HMIXER

The hmxobj parameter is a mixer device handle returned by the mixerOpenO9O8CH function. This flag is optional.

MIXER_OBJECTF_HWAVEIN

The hmxobj parameter is a waveform-audio input handle returned by the waveInOpenDZFQLF function.

MIXER_OBJECTF_HWAVEOUT

The hmxobj parameter is a waveform-audio output handle returned by the waveOutOpen2MUO.P_ function.

MIXER_OBJECTF_MIDIIN

The hmxobj parameter is the identifier of a MIDI input device. This identifier must be in the range of zero to one less than the number of devices returned by the midiInGetNumDevsEDN_AB function.

MIXER_OBJECTF_MIDIOUT

The hmxobj parameter is the identifier of a MIDI output device. This identifier must be in the range of zero to one less than the number of devices returned by the midiOutGetNumDevs18YY8W6 function.

MIXER_OBJECTF_MIXER

The hmxobj parameter is a mixer device identifier in the range of zero to one less than the number of devices returned by the mixerGetNumDevs22K3Y1 function. This flag is optional.

MIXER_OBJECTF_WAVEIN

The hmxobj parameter is the identifier of a waveform-audio input device in the range of zero to one less than the number of devices returned by the waveInGetNumDevs4N_N_MV function.

MIXER_OBJECTF_WAVEOUT

The hmxobj parameter is the identifier of a waveform-audio output device in the range of zero to one less than the number of devices returned by the waveOutGetNumDevs1_HR_R7 function.

MIXER_SETCONTROLDETAILSF_CUSTOM

A custom dialog box for the specified custom mixer control is displayed. The mixer device gathers the required information from the user and returns the data in the specified buffer. The handle for the owning window is specified in the hwndOwner member of the MIXERCONTROLDETAILSJ32N6T structure. (This handle can be set to NULL.) The application can then save the data from the dialog box and use it later to reset the control to the same state by using the MIXER_SETCONTROLDETAILSF_VALUE flag.

MIXER_SETCONTROLDETAILSF_VALUE

The current value(s) for a control are set. The paDetails member of the MIXERCONTROLDETAILS structure points to one or more mixer-control details structures of the appropriate class for the control.

 

Return Values

Returns MMSYSERR_NOERROR if successful or an error otherwise. Possible error values include the following:

MIXERR_INVALCONTROL

The control reference is invalid.

MMSYSERR_BADDEVICEID

The hmxobj parameter specifies an invalid device identifier.

MMSYSERR_INVALFLAG

One or more flags are invalid.

MMSYSERR_INVALHANDLE

The hmxobj parameter specifies an invalid handle.

MMSYSERR_INVALPARAM

One or more parameters are invalid.

MMSYSERR_NODRIVER

No mixer device is available for the object specified by hmxobj.

 

Remarks

All members of the MIXERCONTROLDETAILS structure must be initialized before calling mixerSetControlDetails.

If an application needs to retrieve only the current state of a custom mixer control and not display a dialog box, then mixerGetControlDetails can be used with the MIXER_GETCONTROLDETAILSF_VALUE flag.

See Also

MIXERCONTROLDETAILS, auxGetNumDevs, midiInOpen, midiOutOpen, mixerOpen, waveInOpen, waveOutOpen, midiInGetNumDevs, midiOutGetNumDevs, mixerGetNumDevs, waveInGetNumDevs, waveOutGetNumDevs, mixerGetControlDetails