auxSetVolume 函数 (mmeapi.h)
auxSetVolume 函数设置指定辅助输出设备的音量。
语法
MMRESULT auxSetVolume(
UINT uDeviceID,
DWORD dwVolume
);
参数
uDeviceID
要查询的辅助输出设备的标识符。 设备标识符是根据系统中存在的设备数隐式确定的。 设备标识符值的范围从零到比存在的设备数少一个。 使用 auxGetNumDevs 函数确定系统中辅助设备的数量。
dwVolume
指定新的卷设置。 低序字指定左声道音量设置,高序字指定右声道设置。 值 0xFFFF 表示完整音量,值 0x0000 表示静音。
如果设备不支持左右音量控制,则 dwVolume 的低序字将指定音量级别,高序字将被忽略。
返回值
如果成功,则返回MMSYSERR_NOERROR,否则返回错误。 可能的错误值包括以下内容。
返回代码 | 说明 |
---|---|
|
指定的设备标识符在范围外。 |
注解
并非所有设备都支持音量控制。 若要确定设备是否支持音量控制,请使用 AUXCAPS_VOLUME 标志测试 AUXCAPS 结构的 dwSupport 成员, (由 auxGetDevCaps 函数) 填充。
若要确定设备是否支持左右通道的音量控制,请使用 AUXCAPS_LRVOLUME 标志测试由 auxGetDevCaps) 填充 (AUXCAPS 结构的 dwSupport 成员。
大多数设备不支持完整的 16 位卷级控制,并且将仅使用所请求卷设置的高阶位。 例如,对于支持 4 位音量控制的设备,0x4000、0x4FFF 和 0x43BE 请求的音量级别值将生成相同的物理卷设置,0x4000。 auxGetVolume 函数将返回使用 auxSetVolume 设置的完整 16 位设置。
卷设置以对数方式解释。 这意味着将音量级别从 0x5000 增加到 0x6000 时,感知到的音量增加与从 0x4000 增加到 0x5000 相同。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | mmeapi.h (包括 Windows.h) |
Library | Winmm.lib |
DLL | Winmm.dll |