I'm developing an application that needs to control the volume level of other processes on a Windows 7+ system. To do this I plan to make use of Windows Core Audio, in particular I am testing out the solution provided here.
At the moment I am just printing out the values of the different processes in the mixer like so:
foreach (string name in EnumerateApplications())
{
txt.Text += "[" + name + "][" + Test.GetApplicationVolume(name) + "]\r\n";
}
txt is a Textbox on a form.
Everything is working fine with the exception of Adobe Flash Player (v. 11.7.700.169). I am able to read the correct volume level for, say, Firefox, but Flash just doesn't show up. Additionally, I have two sessions that have no name but don't seem to be related to Flash.

The output of my program is (note: I have two Firefox windows open):
[@%SystemRoot%\System32\AudioSrv.Dll,-202][0]
[][100]
[][100]
[Mozilla Firefox][78]
[Mozilla Firefox][78]
My question is: why is Flash not being enumerated? Why don't I see an entry for ~50%?
I've spent a long time digging around and the best I could find is this bug report at Adobe. Although it doesn't specifically address my problem, it mentions something about an issue with the volume controller session... could be related?