在Windows中检测笔记本电脑上的耳机

在Windows中检测笔记本电脑上的耳机,第1张

概述在Windows中检测笔记本电脑上的耳机

我目前正在开发一个windows桌面应用程序,它应该在连接的audio设备发生任何变化时得到通知。

我目前使用核心audio接口API通过NAudio包装在以下方式:

NAudio.CoreAudioAPI.MMDeviceEnumerator enumerator; public voID PopulateAudioDevices() { enumerator = new NAudio.CoreAudioAPI.MMDeviceEnumerator(); var endpoints = enumerator.EnumerateAudioEndPoints( DataFlow.Render,DeviceState.Unplugged | DeviceState.Active); } protected overrIDe voID OnStart() { PopulateAudioDevices(); if (enumerator != null) { enumerator.RegisterEndpointNotificationCallback(this); } } public voID OnDeviceStateChanged(string deviceid,DeviceState newState) { Console.Writeline($"{devicename} : Device State {newState}"); }

这似乎对大多数USB设备都正常工作,但似乎有些情况下,通过笔记本电脑上的外部耳机插孔连接设备不会导致OnDeviceStateChangedcallback被触发。 我注意到的一个差异化因素是,在这些情况下,当插入外部audio设备时,在windows的“设备pipe理器”屏幕中没有可见的变化。但是,我注意到,每当插入audio设备时,windows音量设置都会改变这使我相信 *** 作系统在某种程度上注册了连接设备的差异。

有没有办法检测这种情况?

windows安全性自定义loginvalIDation

找不到方法:'VoID System.Diagnostics.Tracing.FrameworkEventSource.BeginGetResponse(System.Object,System.String)'

无法打开已被另一个我的应用程序打开的文件

如何在安装程序下载时在.NET安装程序中embedded用户特定的数据?

C#将32bpp图像转换为8bpp

使用windbgdeBUGging.NET转储

`未处理的exception:System.ArgumentNullException:值不能为空.`使用启动脚本运行`dotnet run`时出错

本地消息传递到windows上的.NET应用程序

在linux服务上处理kill – .NET Core 1.1

监视非pgp文件

总结

以上是内存溢出为你收集整理的在Windows中检测笔记本电脑上的耳机全部内容,希望文章能够帮你解决在Windows中检测笔记本电脑上的耳机所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1283770.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-09
下一篇 2022-06-09

发表评论

登录后才能评论

评论列表(0条)

保存