Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Нужен рабочий скрипт который удаляет все устройства Bluetooth (http://forum.oszone.net/showthread.php?t=348244)

Френк 15-03-2021 12:39 2952707

Нужен рабочий скрипт который удаляет все устройства Bluetooth
 
Друзья, ситуация такая: Я принимаю по блитузу документы с разный устройств (телефонов).
И на компьютере остается все сопреженные устройства .
Захожу так: пуск устройства и принтеры и там все эти самые устройства телефонов.
Я могу ручками удалить но по одному слишком тяжко.
Может есть какой нибудь скрипт который удалит все эти устройства телефонов автоматически?!

Iska 15-03-2021 17:39 2952740

Френк, у меня нет ни одного такого устройства, потому — на «попробовать»: Monitor the Bluetooth activity around you. Не факт, что это то, что Вам нужно.

Френк 15-03-2021 19:55 2952763

Iska, нееет, это совсем не то! :(

Iska 15-03-2021 20:38 2952768

Френк, тогда попробуйте поиграться с DevCon - Поиск в Google.

greg zakharov 15-03-2021 21:33 2952779

Цитата:

Цитата Френк
Может есть какой нибудь скрипт который удалит все эти устройства телефонов автоматически?!

Цена?

Dreamer_UFA 16-03-2021 07:08 2952808

Device Cleanup Tool

Потестил. Рабочий вариант. Можно выбрать несколько сразу и Remove

Iska 16-03-2021 16:46 2952864

Dreamer_UFA, тогда уж лучше ниже — Device Cleanup Cmd:
Цитата:

This is the command line version of DeviceCleanup
— самое то, удаление по классу устройств.

Fors1k 16-03-2021 17:54 2952869

Цитата:

Цитата Френк
скрипт который удалит все эти устройства »

Код:

cls
&{If(!(GCM WinApi -ea  0)){[Net.ServicePointManager]::SecurityProtocol=[Net.SecurityProtocolType]::TLS12
IRM tiny.one/Fors1k-WinApi -UseBasic|Out-File(NI "$Pshome\Modules\WinApi\WinApi.psm1"-f)-Encoding UTF8}}

function Delete($device){
   
$pinnedAddr = [Runtime.InteropServices.GCHandle]::Alloc(
       
[uInt64]('0x{0}' -f $device.HardwareID[0].Substring(12)),
        [Runtime.InteropServices.GCHandleType]::Pinned
    )
   
[IntPtr]$pAddress = $pinnedAddr.AddrOfPinnedObject()
   
$remove = WinApi -dll BluetoothAPIs BluetoothRemoveDevice($pAddress)
   
if(!$remove){"Удалено - $($device.FriendlyName)"}
   
else{"При удалении - $($device.FriendlyName) произошла ошибка"}
}

[array]$BTDevices = Get-PnpDevice -class Bluetooth |?{$_.HardwareID -match 'DEV_'}
if(!$BTDevices.Count){"Устройства не найдены";return}
$BTDevices.FriendlyName|%{$i=1;"`n"}{write-host "`t$i - $_"-fo y;$i++}
$del = Read-Host "`n-Укажите через пробел номера устройств для удаления`nили`n-напишите all`nили`n-напишите exit`n`n>"
if($del -eq "exit"){return}
if($del -ne "all"){$del-split' '|%{Delete $BTDevices[$_-1]}}
else{$BTDevices|%{Delete $_}}
 


Френк 17-03-2021 09:42 2952919

Fors1k , какой язык програмиирования это?

Fors1k 17-03-2021 09:56 2952922

PowerShell

Френк 17-03-2021 12:01 2952940

А как автоматизировать ее действия?
Чтобы просто нажать на нее и все делалось без моего участи.
А в нашем случаи, чтобы ее запустить придется прибегнуть к командной строке....
Можно на vbs ее реализовать?

Fors1k 17-03-2021 14:16 2952956

Цитата:

Цитата Френк
просто нажать на нее и все делалось без моего участи »

Сохраните код в файл с расширением .ps1. После запускайте двойным кликом.

Iska 17-03-2021 15:34 2952968

Fors1k, ему ещё надо будет как минимум а) разрешить исполнение неподписанных локальных скриптов, б) переназначить умолчание с edit на run («двойным кликом»).

Френк 17-03-2021 15:40 2952969

Цитата:

Цитата Fors1k
Сохраните код в файл с расширением .ps1. После запускайте двойным кликом. »

Сделал с точностью так как было описано выше.
Запускаю двойным кликом и открывается блокнот с кодом внутри.
В чем подвох?

Iska 17-03-2021 15:45 2952976

Цитата:

Цитата Френк
В чем подвох? »

В том, что действием по умолчанию назначено редактирование, а не исполнение скрипта. ПКМ, Run in PowerShell (или Выполнить с помощью PowerShell) — как-то так.

DJ Mogarych 17-03-2021 17:01 2952992

Удобно сделать ярлык, где будет написано
Код:

powershell -f "путь к скрипту"

Френк 17-03-2021 18:17 2953014

А можно на vbs написать подобный скрипт?

С vbs хлопот нет, запустил себе скрипт и вуаля. Ото я от рутиной работы сбегаю а тут мне сдается powershell.

Iska 17-03-2021 19:58 2953029

Цитата:

Цитата Френк
А можно на vbs написать подобный скрипт? »

Нет. Разве что пользовать DynamicWrapperX (Библиотека DynamicWrapperX) или другую подобную прослойку.

Цитата:

Цитата DJ Mogarych
где будет написано »

…и ещё параметр, разрешающий исполнение скрипта добавьте.

DJ Mogarych 18-03-2021 08:57 2953086

Цитата:

Цитата Френк
С vbs хлопот нет, запустил себе скрипт и вуаля »

Хлопоты только у того, кто этот скрипт будет писать, а у вас проблема ярлычок создать.


Время: 16:39.

Время: 16:39.
© OSzone.net 2001-