Включение/отключение Bluetooth через батник/сочетание клавиш
Цитата: Эльдар от 19.10.2021, 23:33Приветствую. Имеется ноутбук. Среди сочетаний fn+(F1-F12) нет отдельно клавиши под блютуз.
Частенько подключаю/отключаю блютуз-наушники. Мыши нет, пользуюсь в основном тачпадом, да и ноут слабоват. Постоянно "ехать" тачпадом в панель уведомлений, ждать пока откроется, включать кнопку блютуз, затем когда блютуз не нужен делать то же самое для отключения, много лишних действий, надоедающих при частом использовании блютуз.
Решил попробовать сделать через cmd батник, на запуск которого можно назначить сочетание клавиш.
Всё что нашёл в интернете это включение/отключение оборудования в диспетчере устройств через devcon.exe
Этот способ не подходит, так как просто отключает оборудование. Но нажатие на кнопку блютуз в панели уведомлений срабатывает не так. При выключенной кнопке в диспетчере виднеется только "Bluetooth Adapter". тык
При включённой же кнопке в диспетчер добавляется ещё 6 устройств. тык
То есть по кнопке блютуз, устройства не "включаются/отключаются" а будто "извлекаются/вставляются"
Подкскажите в какую сторону копать, какой триггер срабатывает при нажатии кнопки в панели уведомлений, можно ли просто через тот же батник воздействовать напрямую на кнопку без возни с устройствами
Приветствую. Имеется ноутбук. Среди сочетаний fn+(F1-F12) нет отдельно клавиши под блютуз.
Частенько подключаю/отключаю блютуз-наушники. Мыши нет, пользуюсь в основном тачпадом, да и ноут слабоват. Постоянно "ехать" тачпадом в панель уведомлений, ждать пока откроется, включать кнопку блютуз, затем когда блютуз не нужен делать то же самое для отключения, много лишних действий, надоедающих при частом использовании блютуз.
Решил попробовать сделать через cmd батник, на запуск которого можно назначить сочетание клавиш.
Всё что нашёл в интернете это включение/отключение оборудования в диспетчере устройств через devcon.exe
Этот способ не подходит, так как просто отключает оборудование. Но нажатие на кнопку блютуз в панели уведомлений срабатывает не так. При выключенной кнопке в диспетчере виднеется только "Bluetooth Adapter". тык
При включённой же кнопке в диспетчер добавляется ещё 6 устройств. тык
То есть по кнопке блютуз, устройства не "включаются/отключаются" а будто "извлекаются/вставляются"
Подкскажите в какую сторону копать, какой триггер срабатывает при нажатии кнопки в панели уведомлений, можно ли просто через тот же батник воздействовать напрямую на кнопку без возни с устройствами
Цитата: Эльдар от 20.10.2021, 13:51Цитата: Mikhail от 20.10.2021, 01:40Добрый
.
Пользуйтесь поиском.Продолжать тему там или можно здесь? Тамашние варианты решения не работают. Во-первых, магазина нет, во-вторых, батник не работает, (делал по инструкции и запуск скриптов разрешал), в-третьих, мне нужно не cовсем то чтобы готовое решение, мне нужно разобраться на что воздействовать и как, чтобы уметь делать это на разных системах в дальнейшем при необходимости, так как мелкомягкие постоянно что-то меняют, сейчас скрипт не работает наверное именно потому что они что-то поменяли, мой билд win10 19043.1237
Цитата: Mikhail от 20.10.2021, 01:40Добрый
.
Пользуйтесь поиском.
Продолжать тему там или можно здесь? Тамашние варианты решения не работают. Во-первых, магазина нет, во-вторых, батник не работает, (делал по инструкции и запуск скриптов разрешал), в-третьих, мне нужно не cовсем то чтобы готовое решение, мне нужно разобраться на что воздействовать и как, чтобы уметь делать это на разных системах в дальнейшем при необходимости, так как мелкомягкие постоянно что-то меняют, сейчас скрипт не работает наверное именно потому что они что-то поменяли, мой билд win10 19043.1237
Цитата: ЯR от 20.10.2021, 14:13Здравствуйте, Эльдар.
А что конкретно у вас не работает?
Если Служба поддержки Bluetooth, в момент запуска ярлыка, отключена, то ярлык стоит запускать от Админа. Либо, в свойствах данной службы, тип запуска установить наАвтоматически.По поводу "мне нужно разобраться" — читайте здесь.
Здравствуйте, Эльдар.
А что конкретно у вас не работает?
Если Служба поддержки Bluetooth, в момент запуска ярлыка, отключена, то ярлык стоит запускать от Админа. Либо, в свойствах данной службы, тип запуска установить на СкопированоАвтоматически.
По поводу "мне нужно разобраться" — читайте здесь.
Цитата: Эльдар от 20.10.2021, 14:56Цитата: Яр от 20.10.2021, 14:13Здравствуйте, Эльдар.
А что конкретно у вас не работает?
Если Служба поддержки Bluetooth, в момент запуска ярлыка, отключена, то ярлык стоит запускать от Админа. Либо, в свойствах данной службы, тип запуска установить наАвтоматически.По поводу "мне нужно разобраться" — читайте здесь.
По запуску bt_on от имени администратора блютуз не переходит в режим "вкл", в панели уведомлений не становится значок зелёным, в трее не появляется иконка блютуз, хотя сама служба при bt_off останавливается и при bt_on вроде как стартует.
По ссылке которую вы порекомендовали как раз обсуждается тот батник и скрипт powershell, что он не работает и та тема создана для решения проблем, но так и не найдено там нормального решения, только в середине снова ссылка на приложение в магазине windows. Штош, будем курить ман дальше, либо магазин придётся восстанавливать
Цитата: Яр от 20.10.2021, 14:13Здравствуйте, Эльдар.
А что конкретно у вас не работает?
Если Служба поддержки Bluetooth, в момент запуска ярлыка, отключена, то ярлык стоит запускать от Админа. Либо, в свойствах данной службы, тип запуска установить наСкопированоАвтоматически.По поводу "мне нужно разобраться" — читайте здесь.
По запуску bt_on от имени администратора блютуз не переходит в режим "вкл", в панели уведомлений не становится значок зелёным, в трее не появляется иконка блютуз, хотя сама служба при bt_off останавливается и при bt_on вроде как стартует.
По ссылке которую вы порекомендовали как раз обсуждается тот батник и скрипт powershell, что он не работает и та тема создана для решения проблем, но так и не найдено там нормального решения, только в середине снова ссылка на приложение в магазине windows. Штош, будем курить ман дальше, либо магазин придётся восстанавливать
Цитата: ЯR от 20.10.2021, 15:16В том то и дело, в чистом cmd его никак не решить, поэтому и был приведён вариант в powershell (ссылка, которую я вам дал), который, к слову, у меня работает.
Вызовите свойства ярлыка bt_on, вместо последней команды exit, впишите pause, примените и запустите ярлык снова. Скрин работы консоли, сюда.
В том то и дело, в чистом cmd его никак не решить, поэтому и был приведён вариант в powershell (ссылка, которую я вам дал), который, к слову, у меня работает.
Вызовите свойства ярлыка bt_on, вместо последней команды exit, впишите pause, примените и запустите ярлык снова. Скрин работы консоли, сюда.
Цитата: Эльдар от 20.10.2021, 18:21Цитата: Яр от 20.10.2021, 15:16В том то и дело, в чистом cmd его никак не решить, поэтому и был приведён вариант в powershell (ссылка, которую я вам дал), который, к слову, у меня работает.
Вызовите свойства ярлыка bt_on, вместо последней команды exit, впишите pause, примените и запустите ярлык снова. Скрин работы консоли, сюда.ДаДа мне любой способ подойдёт, хоть cmd хоть powershell хоть vbs хоть reg)) мне главное забиндить на любую горячую клавишу, либо создать ярлык (в свойствах ярлыка можно забиндить официально)
скрины: bt_off bt_on и редактор powershell
Цитата: Яр от 20.10.2021, 15:16В том то и дело, в чистом cmd его никак не решить, поэтому и был приведён вариант в powershell (ссылка, которую я вам дал), который, к слову, у меня работает.
Вызовите свойства ярлыка bt_on, вместо последней команды exit, впишите pause, примените и запустите ярлык снова. Скрин работы консоли, сюда.Да
Да мне любой способ подойдёт, хоть cmd хоть powershell хоть vbs хоть reg)) мне главное забиндить на любую горячую клавишу, либо создать ярлык (в свойствах ярлыка можно забиндить официально)
скрины: bt_off bt_on и редактор powershell
Цитата: Эльдар от 20.10.2021, 18:32ps. под "не то чтобы совсем готовое решение нужно, хочу разобраться" я скорее подразумевал, что можно и готовое решение, но если оно в виде скрипта, команд и тд, то в коде могли бы присутствовать коды с ID устройств или идентификаторы команд, которые могут меняться в зависимости от компа. И разобраться хотел чтобы понимать где брать эти ID на случай необходимости подправить код под другой комп
ps. под "не то чтобы совсем готовое решение нужно, хочу разобраться" я скорее подразумевал, что можно и готовое решение, но если оно в виде скрипта, команд и тд, то в коде могли бы присутствовать коды с ID устройств или идентификаторы команд, которые могут меняться в зависимости от компа. И разобраться хотел чтобы понимать где брать эти ID на случай необходимости подправить код под другой комп
Цитата: ЯR от 20.10.2021, 19:13На скринах ошибок нет, по идее, должно работать.
Проблема в том, что Microsoft не предоставляет доступ к API. Именно поэтому, приходиться действовать через костыли (.NET + WinRT), запрашивая и перечисляя активные устройства (не даром вначале запускается служба, потому как даже если служба находиться в состоянии "Вручную" — основная часть скрипта не сработает).
На скринах ошибок нет, по идее, должно работать.
Проблема в том, что Microsoft не предоставляет доступ к API. Именно поэтому, приходиться действовать через костыли (.NET + WinRT), запрашивая и перечисляя активные устройства (не даром вначале запускается служба, потому как даже если служба находиться в состоянии "Вручную" — основная часть скрипта не сработает).
Цитата: Эльдар от 20.10.2021, 21:17Цитата: Яр от 20.10.2021, 19:13На скринах ошибок нет, по идее, должно работать.
Проблема в том, что Microsoft не предоставляет доступ к API. Именно поэтому, приходиться действовать через костыли (.NET + WinRT), запрашивая и перечисляя активные устройства (не даром вначале запускается служба, потому как даже если служба находиться в состоянии "Вручную" — основная часть скрипта не сработает).
По идее) Но не работает. Странности заметил, что в bt off прописан stop bthserv а в bt on нету start bthserv, хотя в этом одна из сутей батника и заключается, сначала включить сервис, потом пытаться включить блютуз)
В Инете наткнулся на эту статью из которой вроде как понимается что API для управления радиомодулями открыты, там есть ссылка на примеры и ссылка на майкрософт Windows.Device.Radios Namespace но там для меня уже инопланетный язык и ничего не пойму)). Есть тут кодеры? Христ наверное занят
Цитата: Яр от 20.10.2021, 19:13На скринах ошибок нет, по идее, должно работать.
Проблема в том, что Microsoft не предоставляет доступ к API. Именно поэтому, приходиться действовать через костыли (.NET + WinRT), запрашивая и перечисляя активные устройства (не даром вначале запускается служба, потому как даже если служба находиться в состоянии "Вручную" — основная часть скрипта не сработает).
По идее) Но не работает. Странности заметил, что в bt off прописан stop bthserv а в bt on нету start bthserv, хотя в этом одна из сутей батника и заключается, сначала включить сервис, потом пытаться включить блютуз)
В Инете наткнулся на эту статью из которой вроде как понимается что API для управления радиомодулями открыты, там есть ссылка на примеры и ссылка на майкрософт Windows.Device.Radios Namespace но там для меня уже инопланетный язык и ничего не пойму)). Есть тут кодеры? Христ наверное занят
Цитата: ЯR от 20.10.2021, 21:20Цитата: Эльдар от 20.10.2021, 21:17По идее) Но не работает. Странности заметил, что в bt off прописан stop bthserv а в bt on нету start bthserv, хотя в этом одна из сутей батника и заключается, сначала включить сервис, потом пытаться включить блютуз)
...
Включение службы заложено в сам ps-скрипт.
В Инете наткнулся на эту статью ...
Вот, кстати, у UWP приложений есть доступ к API, забыл упомянуть.
Цитата: Эльдар от 20.10.2021, 21:17По идее) Но не работает. Странности заметил, что в bt off прописан stop bthserv а в bt on нету start bthserv, хотя в этом одна из сутей батника и заключается, сначала включить сервис, потом пытаться включить блютуз)
...
Включение службы заложено в сам ps-скрипт.
В Инете наткнулся на эту статью ...
Вот, кстати, у UWP приложений есть доступ к API, забыл упомянуть.
Цитата: Эльдар от 20.10.2021, 21:56Цитата: Яр от 20.10.2021, 21:20Цитата: Эльдар от 20.10.2021, 21:17По идее) Но не работает. Странности заметил, что в bt off прописан stop bthserv а в bt on нету start bthserv, хотя в этом одна из сутей батника и заключается, сначала включить сервис, потом пытаться включить блютуз)
...
Включение службы заложено в сам ps-скрипт.
В Инете наткнулся на эту статью ...
Вот, кстати, у UWP приложений есть доступ к API, забыл упомянуть.
Суть в том, что остановка и запуск сервиса bthserv у меня никак не влияла на переключение кнопки и она у меня переключалась во вкл и выкл независимо от статуса сервиса🤷🏻♂️ и даже другие службы (у меня rtkbt_чё-то там и bluetooth audio_че-то там) тоже в выключенном состоянии не влияли на кнопку и она все равно включалась
Цитата: Яр от 20.10.2021, 21:20Цитата: Эльдар от 20.10.2021, 21:17По идее) Но не работает. Странности заметил, что в bt off прописан stop bthserv а в bt on нету start bthserv, хотя в этом одна из сутей батника и заключается, сначала включить сервис, потом пытаться включить блютуз)
...
Включение службы заложено в сам ps-скрипт.
В Инете наткнулся на эту статью ...
Вот, кстати, у UWP приложений есть доступ к API, забыл упомянуть.
Суть в том, что остановка и запуск сервиса bthserv у меня никак не влияла на переключение кнопки и она у меня переключалась во вкл и выкл независимо от статуса сервиса🤷🏻♂️ и даже другие службы (у меня rtkbt_чё-то там и bluetooth audio_че-то там) тоже в выключенном состоянии не влияли на кнопку и она все равно включалась
Цитата: XpucT от 23.11.2021, 19:45Всем привет 🖐
Начнём с того, что Bluetooth-устройство когда-то уже было сопряжено и постоянно его удалять не нужно.
Другой вопрос, что оно само не Подключается кнопкой [button]Подключить[/button], и чтобы это исправить делаем следующее:
- Идём в
Параметры➜Устройстваи запоминаем имя устройства (пример)- Создаём папку в любом удобном месте и называем её, например,
Включить уши- Кладём в эту папку 2 файла btcom.exe и connect.vbs
- Открываем connect.vbs в любом текстовом редакторе и меняем
Galaxy Buds2 (^.^)на имя, которое запомнили
Кавычки не удаляем, меняем именно имя (скриншот)- Делаем двойной клик по connect.vbs и уши Подключатся
Так быстро, как это позволит ваша пара Bluetooth[spoiler title="vbs"]
' Команда ниже Подключает наушники и на них идёт звук WScript.CreateObject("WScript.Shell").Run "cmd /c btcom -n ""Galaxy Buds2 (^.^)"" -c -s110b", 0, true ' Команда ниже Отключает звук с наушников WScript.CreateObject("WScript.Shell").Run "cmd /c btcom -n ""Galaxy Buds2 (^.^)"" -r -s110b", 0, true '''''''''''''' ' Команда ниже Подключает наушники и включает микрофон на них WScript.CreateObject("WScript.Shell").Run "cmd /c btcom -n ""Galaxy Buds2 (^.^)"" -c -s111e", 0, true ' Команда ниже отключает микрофон с наушников WScript.CreateObject("WScript.Shell").Run "cmd /c btcom -n ""Galaxy Buds2 (^.^)"" -r -s111e", 0, true
[/spoiler]
Всем привет 🖐
Начнём с того, что Bluetooth-устройство когда-то уже было сопряжено и постоянно его удалять не нужно.
Другой вопрос, что оно само не Подключается кнопкой Подключить, и чтобы это исправить делаем следующее:
- Идём в
СкопированоПараметры➜СкопированоУстройстваи запоминаем имя устройства (пример) - Создаём папку в любом удобном месте и называем её, например,
СкопированоВключить уши - Кладём в эту папку 2 файла btcom.exe и connect.vbs
- Открываем connect.vbs в любом текстовом редакторе и меняем
СкопированоGalaxy Buds2 (^.^)на имя, которое запомнили
Кавычки не удаляем, меняем именно имя (скриншот) - Делаем двойной клик по connect.vbs и уши Подключатся
Так быстро, как это позволит ваша пара Bluetooth
' Команда ниже Подключает наушники и на них идёт звук
WScript.CreateObject("WScript.Shell").Run "cmd /c btcom -n ""Galaxy Buds2 (^.^)"" -c -s110b", 0, true
' Команда ниже Отключает звук с наушников
WScript.CreateObject("WScript.Shell").Run "cmd /c btcom -n ""Galaxy Buds2 (^.^)"" -r -s110b", 0, true
''''''''''''''
' Команда ниже Подключает наушники и включает микрофон на них
WScript.CreateObject("WScript.Shell").Run "cmd /c btcom -n ""Galaxy Buds2 (^.^)"" -c -s111e", 0, true
' Команда ниже отключает микрофон с наушников
WScript.CreateObject("WScript.Shell").Run "cmd /c btcom -n ""Galaxy Buds2 (^.^)"" -r -s111e", 0, true
Цитата: Shendrick от 31.07.2022, 16:51Извините, но кажется не работают ссылки для скачивания файлов, можно обновить?
Извините, но кажется не работают ссылки для скачивания файлов, можно обновить?
