6119|11

76

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

音量开关键的问题 [复制链接]

在winuser.h中可以找到
#define VK_VOLUME_MUTE  0xAD
的键值定义。但是将键值对应后按键并没有效。查了一下帮助好像windows mobile里面并不支持。怎么样才能实现按键控制声音开关?有哪位做过,指点一下?

最新回复

SendMessage(Handle, WM_APPCOMMAND, 0x200EB0, APPCOMMAND_VOLUME_MUTE * 0x10000);  详情 回复 发表于 2008-8-8 17:12
点赞 关注

回复
举报

66

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
改注册表,看这个把http://blog.eeworld.net/norains/archive/2007/04/08/1556912.aspx
你要只屏蔽在自己程序的话,可以进入你的程序时屏蔽,退出时恢复就好了.
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
改注册表的话,系统状态是否也会随着改变。我的意思是界面上那个小喇叭能不能也显示声音关闭?
 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

4
 
回应者寡啊
 
 
 

回复

59

帖子

0

TA的资源

一粒金砂(初级)

5
 
我验证了一下,写注册表的方法并不能实时改变音量。用API的话能够做到,但是任务栏上那个声音喇叭的图标并不能实时刷新。要过一阵,系统调用了VoiceBar.dll后,才能刷新,不知道为什么。
 
 
 

回复

96

帖子

0

TA的资源

一粒金砂(初级)

6
 
其实我也没用过,如果只是单纯改音量也可以用SetVolume
 
 
 

回复

89

帖子

0

TA的资源

一粒金砂(初级)

7
 
我改音量用的是waveOutSetVolume,好像也要改注册表。但是喇叭图标就不知道了
 
 
 

回复

77

帖子

0

TA的资源

一粒金砂(初级)

8
 
其实我就是想做个系统静音的开关按键。在开关声音的同时,系统状态也实时改变。现在是开关声音很容易,但是做不到系统shell的状态同步。
 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

9
 
SetVolume实际上也是调用了coredll里面的waveOutSetVolume。两者应该都是API的调用,可以改变系统主设备音量,但是做不到shell的任务栏图标实时改变状态。
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

10
 
注册表修改并不能实时改变音量。我用了api里面的waveOutSetVolume,可以实时改变音量。但是任务栏上的声音图标并不能实时刷新。比如我设置了静音,但是那个小喇叭的叉要很久以后系统调用了VoiceBar.dll才会出来。我用::SendMessage( hwnd,WM_SETTINGCHANGE,NULL,NULL);去刷新任务栏也没有用哦。这个问题没人知道解决方法吗?
 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

11
 
没人知道啊?要结贴了
 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

12
 
SendMessage(Handle, WM_APPCOMMAND, 0x200EB0, APPCOMMAND_VOLUME_MUTE * 0x10000);
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表