mixerGetLineControls 函数 (mmeapi.h)
mixerGetLineControls 函数检索与音频线关联的一个或多个控件。
语法
MMRESULT mixerGetLineControls(
HMIXEROBJ hmxobj,
LPMIXERLINECONTROLS pmxlc,
DWORD fdwControls
);
parameters
hmxobj
正在查询的 mixer 设备对象的句柄。
pmxlc
指向 MIXERLINECONTROLS 结构的指针。 此结构用于引用一个或多个 MIXERCONTROL 结构,以填充有关与音频线关联的控件的信息。 MIXERLINECONTROLS 结构的 cbStruct 成员必须始终初始化为 MIXERLINECONTROLS 结构的大小(以字节为单位)。
fdwControls
用于检索与音频行关联的一个或多个控件的信息的标志。 定义了以下值。
值 | 含义 |
---|---|
MIXER_GETLINECONTROLSF_ALL | pmxlc 参数引用 MIXERCONTROL 结构的列表,这些结构将接收与 MIXERLINECONTROLS 结构的 dwLineID 成员标识的音频线关联的所有控件的信息。 cControls 成员必须初始化为与行关联的控件数。 此数字是从 mixerGetLineInfo 函数返回的 MIXERLINE 结构的 cControls 成员检索的。 cbmxctrl 成员必须初始化为单个 MIXERCONTROL 结构的大小(以字节为单位)。 pamxctrl 成员必须指向要填充的第一个 MIXERCONTROL 结构。 对于此查询, 将忽略 dwControlID 和 dwControlType 成员。 |
MIXER_GETLINECONTROLSF_ONEBYID | pmxlc 参数引用单个 MIXERCONTROL 结构,该结构将接收有关由 MIXERLINECONTROLS 结构的 dwControlID 成员标识的控件的信息。 cControls 成员必须初始化为 1。 cbmxctrl 成员必须初始化为单个 MIXERCONTROL 结构的大小(以字节为单位)。 pamxctrl 成员必须指向要填充的 MIXERCONTROL 结构。 对于此查询, 将忽略 dwLineID 和 dwControlType 成员。 此查询通常用于在收到用户定义的回调 MM_MIXM_CONTROL_CHANGE 控件更改通知消息后刷新控件, (请参阅 mixerOpen) 。 |
MIXER_GETLINECONTROLSF_ONEBYTYPE | mixerGetLineControls 函数检索有关正在查询的音频线的特定类的第一个控件的信息。 pmxlc 参数引用单个 MIXERCONTROL 结构,该结构将接收有关特定控件的信息。 音频行由 dwLineID 成员标识。 控件类在 MIXERLINECONTROLS 结构的 dwControlType 成员中指定。对于此查询,将忽略 dwControlID 成员。 应用程序可以使用此查询来获取与行关联的单个控件的信息。 例如,你可能希望应用程序仅从波形音频输出线使用峰值计量。 |
MIXER_OBJECTF_AUX | hmxobj 参数是一个辅助设备标识符,其范围为 0 到 1,比 auxGetNumDevs 函数返回的设备数少一个。 |
MIXER_OBJECTF_HMIDIIN | hmxobj 参数是 MIDI 输入设备的句柄。 此句柄必须由 midiInOpen 函数返回。 |
MIXER_OBJECTF_HMIDIOUT | hmxobj 参数是 MIDI 输出设备的句柄。 此句柄必须由 midiOutOpen 函数返回。 |
MIXER_OBJECTF_HMIXER | hmxobj 参数是由 mixerOpen 函数返回的混音器设备句柄。 此标志是可选的。 |
MIXER_OBJECTF_HWAVEIN | hmxobj 参数是由 waveInOpen 函数返回的波形音频输入句柄。 |
MIXER_OBJECTF_HWAVEOUT | hmxobj 参数是由 waveOutOpen 函数返回的波形音频输出句柄。 |
MIXER_OBJECTF_MIDIIN | hmxobj 参数是 MIDI 输入设备的标识符。 此标识符的范围必须小于 midiInGetNumDevs 函数返回的设备数 0 到 1。 |
MIXER_OBJECTF_MIDIOUT | hmxobj 参数是 MIDI 输出设备的标识符。 此标识符的范围必须小于 midiOutGetNumDevs 函数返回的设备数 0 到 1。 |
MIXER_OBJECTF_MIXER | hmxobj 参数是混音器设备的标识符,其范围为 0 到 1,比 mixerGetNumDevs 函数返回的设备数少。 此标志是可选的。 |
MIXER_OBJECTF_WAVEIN | hmxobj 参数是波形音频输入设备的标识符,其范围为 0 到 1,小于 waveInGetNumDevs 函数返回的设备数。 |
MIXER_OBJECTF_WAVEOUT | hmxobj 参数是波形音频输出设备的标识符,其范围为 0 到 1,比 waveOutGetNumDevs 函数返回的设备数少一个。 |
返回值
如果成功,则返回MMSYSERR_NOERROR,否则返回错误。 可能的错误值包括以下内容。
返回代码 | 说明 |
---|---|
|
控件引用无效。 |
|
音频线路引用无效。 |
|
hmxobj 参数指定无效的设备标识符。 |
|
一个或多个标志无效。 |
|
hmxobj 参数指定无效句柄。 |
|
一个或多个参数无效。 |
|
hmxobj 指定的对象没有可用的混音器设备。 |
要求
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | mmeapi.h (包括 Windows.h) |
Library | Winmm.lib |
DLL | Winmm.dll |