c#.net设置系统音量

c#.net设置系统音量

ID:20404765

大小:70.00 KB

页数:7页

时间:2018-10-09

c#.net设置系统音量_第1页
c#.net设置系统音量_第2页
c#.net设置系统音量_第3页
c#.net设置系统音量_第4页
c#.net设置系统音量_第5页
资源描述:

《c#.net设置系统音量》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、C#设置Windows系统音量改变程序音:w:,但不改变系统音:w:设賈usingSystem;usingSystem.Runtime.InteropServices;usingSystem.Diagnostics;namespaceGavinTung{classSystemMultimediaController{/获得音s范围和获取/设賈当前音:w:**ypublicstaticintMaxValue{get{returnint.Parse(jMaxValue.ToStringO);}}publicstaticintMinValue{get{re

2、turnint.Parse(iMinValue.ToStringO);}}publicstaticintCurrentValue{get{GetVolume();returniCurrentValue;}set{SetValue(MaxValue,MinValue,value);*弹出系统音ft控制器**ypublicstaticvoidPopupController(){ProcessStartlnfoInfo=newProcessStartlnfo();Info.FileName="Sndvol32";Process.Start(lnfo);}#

3、regionPrivateStaticDataMembersprivateconstUlnt32iMaxValue=OxFFFF;privateconstUlnt32iMinValue=0x0000;privatestaticintiCurrentValue=0;#endregion#regionPrivateStaticMethod/修改音量伉**/privatestaticvoidSetValue(intaMaxValue,intaMinValue,intaValue){//先把trackbar的value值映射到0x0000〜OxFFFF范围U

4、lnt32Value=(Ulnt32)((double)0xffff*(double)aValue/(double)(aMaxValue-aMinValue));//限制value的取值范围if(Value<0)Value=0;if(Value>Oxffff)Value=Oxffff;Ulnt32left=(Ulnt32)Value;//左声道音量Ulnt32right=(Ulnt32)Value;//右waveOutSetVolume(0zleft«16

5、right};//"<<"左移,“

6、”逻辑或运算}#endregion/**在winmm.dl

7、l中*第一个参数可以为0,表示首选设备*第二个参数为音量:OxFFFF为最大,0x0000为最小,改变系统咅量设置,设置系统的咅量需要调用系统的AM接口函数[DllImport(“user32.dU”)]來控制减音量、加音量、静音;暂时没有找到直接将音量赋值的方法,但可以间接的来赋值(可以先把音量直接减到0,然后再加到您想要的音量)。publicclassSetsysVolume{publicSetsysVolume(){}privateconstbyteVK_VOLUME_MUTE=OxAD;privateconstbyteVK_VOLUME_DO

8、WN=OxAE;privateconstbyteVK_VOLUME_UP=OxAF;privateconstUint32KEYEVENTF_EXTENDEDKEY=0x0001;privateconstUInt32KEYEVENTF_KEYUP=0x0002;lDllImport(“user32.dir)]staticexternvoidkeybd_event(bytebVk,bytebScan,UInt32dwFlags,UInt32dwExtralnfo);lDllImport(“user32.dir)]staticexternByteMapVi

9、rtualKey(UInt32uCode,UInt32uMapType);//加音量,每次加2publicstaticvoidVolumeUpO*得到当前音量**/privatestaticvoidGetVolume(){Ulnt32d,v;d=0;longi=waveOutGetVolumefd,outv);Ulnt32vleft=v&OxFFFF;Ulnt32.Parse((MaxValueUlnt32vright=(v&OxFFFFOOOO)»16;Ulnt32all=vleft

10、vright;Ulnt32value=(allMinValue)

11、.ToString())/((l)lnt32)iMaxValue));iCurrentValue=int.P

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。