Before Vista, all of the controls available to applications were system-wide - when you changed the volume using the wave volume APIs, you changed the hardware volume, thus effecting all the applications in the system. The problem with this is that for the vast majority of applications, this was exactly the wrong behavior. This behavior was a legacy of the old Windows 3.1 audio architecture, where you could only have one application playing audio at a time. In that situation, there was only one hardware volume, so the behavior made sense.
|