mixerGetLineInfoW 函数 (mmeapi.h)
mixerGetLineInfo 函数检索有关混音器设备特定行的信息。
语法
MMRESULT mixerGetLineInfoW(
HMIXEROBJ hmxobj,
LPMIXERLINEW pmxl,
DWORD fdwInfo
);
参数
hmxobj
控制特定音频线的混音器设备对象的句柄。
pmxl
指向 MIXERLINE 结构的指针。 此结构填充了有关混音器设备的音频线的信息。 cbStruct 成员必须始终初始化为 MIXERLINE 结构的大小(以字节为单位)。
fdwInfo
用于检索有关音频行的信息的标志。 定义了以下值。
价值 | 意义 |
---|---|
MIXER_GETLINEINFOF_COMPONENTTYPE | |
MIXER_GETLINEINFOF_DESTINATION | pmxl 参数将接收有关 MIXERLINE 结构 dwDestination 成员指定的目标音频行的信息。 此索引的范围从零到一个小于 cDestinationsMIXERCAPS 结构的成员的值。 除 cbStruct 之外的所有剩余结构成员无需进一步初始化。 |
MIXER_GETLINEINFOF_LINEID | pmxl 参数将接收 MIXERLINE 结构 dwLineID 成员指定的音频行的相关信息。 这通常用于检索有关音频线路状态的更新信息。 除 cbStruct 之外的所有剩余结构成员无需进一步初始化。 |
MIXER_GETLINEINFOF_SOURCE |
pmxl 参数将接收有关 dwDestination 指定的源音频行的信息,以及 dwSourceMIXERLINE 结构的成员。
dwDestination 指定的索引范围从零到一个小于 cDestinationsMIXERCAPS 结构的成员中的值。 |
MIXER_GETLINEINFOF_TARGETTYPE |
注意 此函数的 ANSI 版本(mixerGetLineInfoA),不能使用从 mixerGetLineInfo 返回的 ANSI 字符串 或 在使用 MIXER_GETLINEINFOF_TARGETTYPE 标志调用 mixerGetLineInfo 时,waveOutGetDevCapspsPname 字符串的值。 原因是执行到 Unicode 和从 Unicode 进行内部转换,这可能会导致数据丢失。
|
MIXER_OBJECTF_AUX | hmxobj 参数是零到一个小于 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 函数返回的设备数。 |
MIXER_OBJECTF_MIDIOUT | hmxobj 参数是 MIDI 输出设备的标识符。 此标识符的范围必须小于 midiOutGetNumDevs 函数返回的设备数。 |
MIXER_OBJECTF_MIXER | hmxobj 参数是一个混音器设备标识符,其范围为 0 到 1,小于 mixerGetNumDevs 函数返回的设备数。 此标志是可选的。 |
MIXER_OBJECTF_WAVEIN | hmxobj 参数是波形音频输入设备的标识符,其范围为零到一个小于 waveInGetNumDevs 函数返回的设备数。 |
MIXER_OBJECTF_WAVEOUT | hmxobj 参数是波形音频输出设备的标识符,其范围为零到一个小于 waveOutGetNumDevs 函数返回的设备数。 |
返回值
如果成功或错误,则返回MMSYSERR_NOERROR。 可能的错误值包括以下内容。
返回代码 | 描述 |
---|---|
|
音频线路引用无效。 |
|
hmxobj 参数指定了无效的设备标识符。 |
|
一个或多个标志无效。 |
|
hmxobj 参数指定无效句柄。 |
|
一个或多个参数无效。 |
|
hmxobj指定的对象没有混音器设备。 |
言论
注意
mmeapi.h 标头将 mixerGetLineInfo 定义为一个别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将中性编码别名与不中性编码的代码混合使用可能会导致编译或运行时错误不匹配。 有关详细信息,请参阅函数原型的
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
支持的最低服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | 窗户 |
标头 | mmeapi.h (包括 Windows.h) |
库 | Winmm.lib |
DLL | Winmm.dll |