How can I control audio volume on a Win 7 system that does not boot into Explorer?
I have to configure a number of laptops to run from a custom shell (more or less as kiosks). I can't start Explorer since I absolutely cannot permit file system access, and I also need
to control what the user sees and can click. So I built a simple shell that does what I need, but discovered afterwards that the volume controls on my laptop keyboards no longer worked, except for Mute - I can mute, but I can't unmute. If I boot
back into Explorer (via the admin account) I can unmute, and the controls work normally.
I thought at first that this was due to the manufacturer widgets that respond to keyboard events, but I've seen the same behavior on 2 other completely different laptops, one running a stock MS distribution of Windows 7 with no strange drivers loaded.
So, I thought that maybe keyboard volume events rely on Explorer in some way. I added three buttons to my kiosk, one to mute/unmute, one to raise volume, and one to lower volume, which work via User32.dll. This works fine in testing under my
account, but as soon as I switch to the kiosk account (without Explorer) these stop responding too. There's no error, they just don't work.
So it seems that all volume change events on Windows 7 (except for mute) require Explorer.
Does anybody know what I can do to enable volume controls without running Explorer? Is there a process I need to start, or is there some code I need to add to my Kiosk shell to listen for the events?
March 26th, 2012 12:52pm
This topic seems to be out of the scope of "miscellaneous".
Imho: Your problem will be solved faster in appropriate developer forum
http://social.msdn.microsoft.com/Forums/en-US/categories
Regards
Milos
Free Windows Admin Tool Kit Click here and download it now
March 26th, 2012 3:39pm
I guess that's reasonable - I got linked into this miscellaneous forum from answers.microsoft.com... I've remade this in Windows Desktop Debugging.
March 26th, 2012 3:55pm