乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 139|回复: 11

调高系统音量

[复制链接]

7

主题

46

帖子

3

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
74
发表于 2015-8-12 11:55:00 | 显示全部楼层 |阅读模式
Autocad 2012,VS2010 net 3.5,C# Windows 7有谁知道如何直接从C#访问/更改电脑扬声器音量?我进行了广泛的搜索,找到的所有内容都创建了一个带有滑块的表单。在播放从. dll网络加载到AutoCAD的. mp3文件之前,我想将音量调到最大。此代码适用于实例化的媒体播放器,但不影响计算机的扬声器声音。尝试确定是否有方法获得主卷的句柄,   命名空间口哨。
{ 。

公开课哨子。
{ 。
公共汽笛()。
{ 。
} 。

[CommandMethod("Whistles ",CommandFlags。会话)]。

public void PlayFile()。
{。

系统,音频.音量= 100;//对于100% 。

media player MP = new media player();。
mp,打开(新Uri(@ " G:/AutoCAD 2012 support/visual studio 2010/whistle sounds/Samsung _ whistle _ ringtone . MP3 ",UriKind。绝对));。
mp,play();。

系统,音频.音量= 14;。
}。
}。
}。

命名空间系统。
{。
公共分部类音频。
{。
[DllImport(" winmm . dll ")]。
static extern int waveOutGetVolume(int ptr hwo,out uint dw volume);。

[DllImport(" winmm . dll ")]。
static extern int waveOutSetVolume(int ptr hwo,uint dw volume);。

公共静态int卷。
{。
获取。
{。
uint CurrVol = 100。
ushort calc vol =(ushort)(curr vol & 0x 0000 ffff);。
返回CalcVol/// (ushort,max value/100);。
}。
设置。
{ 。
int NewVolume = value。
uint NewVolumeAllChannels =((uint)new volume & 0x 0000 ffff);。
waveOutSetVolume(IntPtr,Zero,NewVolumeAllChannels);。
}。
}。
} 。
} 。

本帖以下内容被隐藏保护;需要你回复后,才能看到!

游客,如果您要查看本帖隐藏内容请回复
回复

使用道具 举报

44

主题

3166

帖子

2803

银币

中流砥柱

Rank: 25

铜币
557
发表于 2015-8-12 12:20:48 | 显示全部楼层
是的,我似乎有些进步。我想我得到了主窗口的正确窗口句柄,我不确定我得到的消息是否正确。仍在研究中,   公开课哨。
{ 。
公共汽笛()。
{ 。
} 。

[CommandMethod("Whistles ",CommandFlags。会话)]。

public void PlayFile()。
{ 。

IntPtr hWnd = Process,GetProcessesByName(" explorer ")[0],MainWindowHandle。

uint msg = 0x319//。

UIntPtr VOLUME _ UP =(UIntPtr)0x 319;//0xa 0000;。
IntPtr lParam = IntPtr,零;。

IntPtr e = DirectVolume,VolUp.SendMessageW(hWnd,msg,VOLUME_UP,lParam);。

系统,windows . messagebox . show(" e的值:"+e . ToString());。

if (e.ToInt32() > 0)。
{。
media player MP = new media player();。
mp,打开(新Uri(@ " G:/AutoCAD 2012 support/visual studio 2010/whistle sounds/Samsung _ whistle _ ringtone . MP3 ",UriKind。relative or absolute));。
mp,play();。
}。
}。
}。
}。
命名空间DirectVolume。
{。
公共分部类VolUp。
{ 。

[DllImport(" user 32 . dll ")]。
public static extern int ptr FindWindow(String s class name,String app name);。
[DllImport(" user 32 . dll ")]。
public static extern int ptr sendmessage w(int ptr hWnd,uint msg,UIntPtr VOLUME_UP,int ptr lParam);。


//P/Invoke User32,并使用SendMessageW() + VOLUME_UP const或KeyBd_Event() + Keys。VolumeUp枚举。
//const int VOLUME _ UP = 0xa 0000;。
}。
}。


回复

使用道具 举报

7

主题

46

帖子

3

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
74
发表于 2015-8-12 16:58:14 | 显示全部楼层
哈哈的笑...这对同事来说可能会很糟糕
回复

使用道具 举报

129

主题

422

帖子

5

银币

中流砥柱

Rank: 25

铜币
936
发表于 2015-8-12 21:46:43 | 显示全部楼层

您可能会喜欢这条老线索:
http://forums.augi.com/showthread.php?53823-AutoCAD Speak&p=1136822&viewfull=1#post1136822
回复

使用道具 举报

44

主题

3166

帖子

2803

银币

中流砥柱

Rank: 25

铜币
557
发表于 2015-8-13 01:34:47 | 显示全部楼层
哈哈的笑...那是很棒的东西
回复

使用道具 举报

129

主题

422

帖子

5

银币

中流砥柱

Rank: 25

铜币
936
发表于 2015-8-13 02:22:36 | 显示全部楼层

我的主要目标不是“惹”同事,而是......
有一个人使用了我们都觉得很讨厌的铃声。
所以我想,如果我能让他周围的几台机器偶尔播放同一个铃声,
这可能会帮助他寻找另一种音调来使用。

问题是,当机器开15%-20%时,几乎听不到. mp3的声音,
大多数机器都开15%-20%的声音,因为在那个设置下蜂鸣声会大得多,
所以我需要在播放mp3后调高音量,然后再调低。
回复

使用道具 举报

7

主题

46

帖子

3

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
74
发表于 2015-8-13 06:30:59 | 显示全部楼层
根据您的域凭据,可能更简单的方法是简单地使用PowerShell…查看此线程以获取设置扬声器调用,以及其他选项:
http://stackoverflow.com/questions/21355891/change-audio-level-from-powershell
…一名成员甚至编写了自己的PowerShell CmdLet,该CmdLet公开了:
获取DefaultAudioDevice找一个音响设备专家设置DefaultAudioDevice[-Index]
设置DefaultAudioDevice[-Name]
设置DefaultAudioDevice[-InputObject]<AudioDevice>设置DefaultAudioDeviceVolume-音量
获取DefaultAudioDeviceVolume设置DefaultAudioDeviceMute写入DefaultAudioDeviceValue[-StreamValue]
http://www.automatedops.com/projects/windowsaudiodevice-powershell-cmdlet/
回复

使用道具 举报

44

主题

3166

帖子

2803

银币

中流砥柱

Rank: 25

铜币
557
发表于 2015-8-13 08:33:56 | 显示全部楼层
是的,嗯...。
这可能有点超出我的头和权限,不知道。
如果它在这里变慢,我会试一试。
谢谢!
法案
回复

使用道具 举报

7

主题

46

帖子

3

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
74
发表于 2015-8-13 09:50:43 | 显示全部楼层

我的主要目标不是“惹”同事,而是......
有一个人使用我们都觉得讨厌的铃声。
所以我想如果我能让他周围的几台机器偶尔播放相同的铃声,
这可能会帮助他寻找另一种音调来使用。
问题是,当一台机器处于15%-20%时,. mp3几乎听不见,
大多数机器都是这样,因为在那个设置下哔哔声要大得多,
所以我需要在播放mp3后将音量调高并再次调低。

直到有人戴上耳机,你给他们暂时失聪。像这样的事情很少有好结果。
回复

使用道具 举报

16

主题

506

帖子

6

银币

中流砥柱

Rank: 25

铜币
570
发表于 2015-8-13 10:19:36 | 显示全部楼层

这个。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-2-5 00:35 , Processed in 0.176467 second(s), 72 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表