在Delphi中控制应用程序音量

栏目: 编程语言 · 发布时间: 7年前

内容简介:翻译自:https://stackoverflow.com/questions/4616108/controlling-application-sound-volume-in-delphi
我甚至不确定这是否适合一个问题,但这只是一个问题.我有一个用Delphi XE编写的互联网广播播放器,使用 BASS

库进行音频流和播放.该应用程序需要在Windows XP,Vista和7下运行.

Bass可以很容易地控制全局音量,但是没有设置静音功能,一般来说,根据每个应用程序控制音量更好.

Bass还可以轻松控制“通道”(流)的音量,但同样没有静音,这也不是适合每个应用程序的控制. (Windows混音器中的应用程序音量控制不受影响.)

据我所知,对于Vista及以上版本,我需要ISimpleAudioVolume和/或IAudioEndpointVolume,但是找不到这些的Delphi实现.所以问题的一部分是,它作为第三方库存在吗?

第二部分是什么是在XP上控制音量和切换静音(系统范围或每个应用程序)的正确方法,这些接口不可用?

使用此简单代码将其在我的机器上运行的主卷静音:
procedure TForm1.Button1Click(Sender: TObject);
var
i:Integer;
begin
for i:=0 to 100 do
begin
  keybd_event($AE, MapVirtualKey($AE,0), 0, 0);
  keybd_event($AE, MapVirtualKey($AE,0), KEYEVENTF_KEYUP, 0);
end;
end;

翻译自:https://stackoverflow.com/questions/4616108/controlling-application-sound-volume-in-delphi


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

The Black Box Society

The Black Box Society

Frank Pasquale / Harvard University Press / 2015-1-5 / USD 35.00

Every day, corporations are connecting the dots about our personal behavior—silently scrutinizing clues left behind by our work habits and Internet use. The data compiled and portraits created are inc......一起来看看 《The Black Box Society》 这本书的介绍吧!

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具