当前位置: 首页 > news >正文

网站图片怎么做的高级平面设计赚钱平台

网站图片怎么做的高级,平面设计赚钱平台,心悦会员荣誉战场两张免做卡网站,阿里云esc 可以做几个网站VC常用功能开发汇总(专栏文章列表,欢迎订阅,持续更新...)https://blog.csdn.net/chenlycly/article/details/124272585C软件异常排查从入门到精通系列教程(专栏文章列表,欢迎订阅,持续更新...&a…

VC++常用功能开发汇总(专栏文章列表,欢迎订阅,持续更新...)https://blog.csdn.net/chenlycly/article/details/124272585C++软件异常排查从入门到精通系列教程(专栏文章列表,欢迎订阅,持续更新...)https://blog.csdn.net/chenlycly/article/details/125529931        本文讲述如何将某个进程的声音(扬声器)打开或关闭掉,这个功能在某些场合下可能会用到,在此给大家做个分享。

1、在系统设置页面中将进程的扬声器打开或关闭

        以Win10系统为例,在系统桌面的右下角托盘图标区域中找到系统音量图标,右键点击该图标,弹出如下的右键菜单:

点击“打开音量合成器”菜单项,打开使用扬声器的进程列表页面,如下所示:

以操作企业微信进程为例,点击下面的声音图标,即可将企业微信进程的扬声器关闭或打开。如果将企业微信进程的扬声器关闭,则听不到企业微信进程的所有声音。

2、通过代码实现进程扬声器打开或关闭

        Windows系统支持以COM组件的方式访问系统中的音视频设备,我们可以先获取所有的音频播放设备,然后遍历设备下对应的进程列表,然后通过进程id去遍历进程列表,找到目标进程后,对进程的扬声器进行关闭和打开操作。

         以开关本进程的扬声器为例,完整的实现代码如下:

BOOL SetCurrentSpeakerMute(BOOL bQuiet)
{HRESULT hr = S_OK;IMMDeviceCollection *pMultiDevice = NULL;IMMDevice *pDevice = NULL;IAudioSessionEnumerator *pSessionEnum = NULL;IAudioSessionManager2 *pASManager = NULL;IMMDeviceEnumerator *pEnumerator = NULL;const IID IID_ISimpleAudioVolume = __uuidof(ISimpleAudioVolume);const IID IID_IAudioSessionControl2 = __uuidof(IAudioSessionControl2);CoInitialize(NULL);// Get enumerator for audio endpoint devices.hr = CoCreateInstance(__uuidof(MMDeviceEnumerator),NULL, CLSCTX_ALL,__uuidof(IMMDeviceEnumerator),(void**)&pEnumerator);if (FAILED(hr))return FALSE;// 1、获取音频播放设备hr = pEnumerator->EnumAudioEndpoints(eRender, DEVICE_STATE_ACTIVE, &pMultiDevice);if (FAILED(hr))return FALSE;UINT deviceCount = 0;hr = pMultiDevice->GetCount(&deviceCount);if (FAILED(hr))return FALSE;// 2、遍历音频播放设备for (UINT ii = 0; ii < deviceCount; ii++){pDevice = NULL;hr = pMultiDevice->Item(ii, &pDevice);if (FAILED(hr))return FALSE;hr = pDevice->Activate(__uuidof(IAudioSessionManager), CLSCTX_ALL, NULL, (void**)&pASManager);if (FAILED(hr))return FALSE;hr = pASManager->GetSessionEnumerator(&pSessionEnum);if (FAILED(hr))return FALSE;int nCount;hr = pSessionEnum->GetCount(&nCount);for (int i = 0; i < nCount; i++){IAudioSessionControl *pSessionCtrl;hr = pSessionEnum->GetSession(i, &pSessionCtrl);if (FAILED(hr))continue;// 3、获取音频播放控制对象IAudioSessionControl2 *pSessionCtrl2;hr = pSessionCtrl->QueryInterface(IID_IAudioSessionControl2, (void **)&pSessionCtrl2);if (FAILED(hr))continue;ULONG pid;hr = pSessionCtrl2->GetProcessId(&pid);if (FAILED(hr))continue;ISimpleAudioVolume *pSimplevol;hr = pSessionCtrl2->QueryInterface(IID_ISimpleAudioVolume, (void **)&pSimplevol);if (FAILED(hr))continue;// 4、对比获取音频播放控制对象的进程id,判断是不是本进程的if (pid == GetCurrentProcessId()){// 将目标进程静音pSimplevol->SetMute(bQuiet, &GUID_NULL);}if (pSimplevol != NULL){pSimplevol->Release();}if (pSessionCtrl2 != NULL){pSessionCtrl2->Release();}if (pSessionCtrl != NULL){pSessionCtrl->Release();}}}if (pSessionEnum != NULL) pSessionEnum->Release();if (pASManager != NULL) pASManager->Release();if (pDevice != NULL) pDevice->Release();if (pMultiDevice != NULL) pMultiDevice->Release();if (pEnumerator != NULL) pEnumerator->Release();CoUninitialize();return TRUE;
}
http://www.yayakq.cn/news/160601/

相关文章:

  • 建设网站搞网络营销的总结怎样建设网站优化
  • 网站反链一般怎么做在线生成个人网站推荐
  • 网站版式分类公众号 商城 网站开发
  • 网站扩展名谷歌推广新手教程
  • 郑州网站设计 公司手机营销网站模板
  • 打开网站弹出广告代码南昌自动seo
  • 集团网站 源码网页设计需要学什么编程
  • 商城类网站建设的服务器选择抖音小程序开通
  • 广元建设机械网站重庆美食制作
  • 拉链网站源码做网上商城网站
  • 长春网站制作哪里好打开网站后直接做跳转页面吗
  • 企业网站翻译大型门户网站
  • 建设医疗网站合肥建站企业
  • 百度不收录哪些网站科技感网站设计
  • 珠海网站网站建设新网站做百度推广
  • 佛山 做网站公司有哪些91手表网
  • 旅游网站设计代码html自己做的网站设定背景图像
  • cms进行网站开发绩效管理网站开发
  • 网站总体结构廊坊网站定制开发
  • 企业门户网站模板wordpress文章密码爆破
  • 微信创建网站应用程序wordpress的文章分类
  • 国外免费空间哪个好优化方案语文
  • 程序员做网站美工能过关吗网站建设与维护的选择题
  • 青州建网站wordpress主题讲解
  • 天津 企业网站建设网站换了域名做跳转
  • 广告公司网站设计策划专做茶叶的网站
  • 制作网站开发公司宣传片制作公司保定
  • 大学网站建设策划书wordpress 标题 插件
  • 网站开发费是无形资产吗青岛如何建立企业网站企业
  • 网站建设肆金手指排名2wordpress添加默认头像