Mar*_*inJ 14 audio script powershell bluetooth windows-10
有没有办法通过powershell或任何其他工具连接和断开配对的蓝牙设备?基本上按下蓝牙和其他设备中的连接/断开按钮,除了从任何类型的命令行(Powershell、使用某些命令行工具的 bat、C#、C++ 中的代码等):
我找到了这个答案,但它涉及取消配对和再次配对,这不起作用,因为我的耳机需要处于配对模式才能接受新配对。我宁愿不通过 AutoIt 或其他类似的软件模拟按键和鼠标点击。
Mar*_*inJ 14
我编写了 C++ 代码来使用Win32 蓝牙 APIBluetoothSetServiceState
来完成它,但实际上使用蓝牙命令行工具就足够了。
事实证明,一旦设备使用的所有服务都被禁用,Windows 会自动释放设备并断开连接。就我而言,根据屏幕截图,这些是语音和音乐,大多数耳机的工作方式相同。
语音实际上是免提服务 (HFP),而音乐只是一个音频接收器 (A2DP)。服务标识符将是必要的,它们可以通过使用上面包中的btdiscovery
命令或通过蓝牙服务列表来发现。HFP 语音是111e
,A2DP 音乐是110b
。
每个btcom
命令行帮助:
用法:
Run Code Online (Sandbox Code Playgroud)btcom {-c|-r} {-bBluetoothAddress | -nFriendlyName} [-s{sp|dun|GUID|UUID}] -c Create association between COM port and a remote service (Enable non-COM service). -r Remove association between COM port and a remote service (Disable non-COM service). -s Remote service to use (Default is Serial Port Service) -b Bluetooth address of remote device in (XX:XX:XX:XX:XX:XX) format. -n Friendly name of remote device.
要断开设备连接,请发出以下命令(仅在我的情况下以管理员身份运行时有效,使用 Windows 10 1809 (17763.437)):
"C:\Program Files (x86)\Bluetooth Command Line Tools\bin\btcom" -n "WH-1000XM3" -r -s111e
"C:\Program Files (x86)\Bluetooth Command Line Tools\bin\btcom" -n "WH-1000XM3" -r -s110b
Run Code Online (Sandbox Code Playgroud)
要再次连接,请使用-c
而不是发出相同的命令-r
。这适用于其他设备,而不仅仅是耳机,只要 Windows 连接的所有服务/配置文件都被禁用/启用。
注意:由于执行蓝牙发现,-n <friendly name>
使用比使用慢得多-b <address>
。
小智 9
win 10 快捷键https://www.windowscentral.com/best-windows-10-keyboard-shortcuts
win-key + K 打开侧边栏菜单并立即搜索蓝牙设备。然后单击已配对的设备并连接。
小智 6
如果 @MarcinJ 使用蓝牙命令行工具的解决方案对您来说太慢,特别是当您想在来电的同时配对设备时,请尝试创建 Windows 快捷方式:(
右键单击 > 新建 > 快捷方式)
%windir%\explorer.exe ms-settings-connectabledevices:devicediscovery
Run Code Online (Sandbox Code Playgroud)
它将在屏幕上弹出一个显示和音频面板,只需单击一下即可连接。
例如,可以在 上找到漂亮的 BT 快捷方式图标C:\Windows\System32\fsquirt.exe
。
归档时间: |
|
查看次数: |
15348 次 |
最近记录: |