Форум программистов, компьютерный форум, киберфорум
PowerShell
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 16.06.2024
Сообщений: 6

Как получить уникальный идентификатор USB порта к которому подключён USB накопитель

16.06.2024, 15:42. Показов 1310. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подскажите как сделать определение хоть какого идентификатора USB порта? Суть в том что на компьютере нужно проверить все USB порты. Для этого мы подключаем внешний USB-SSD и замеряем скорость. Хочу автоматизировать процесс. Но для этого нужно определить что тестовый диск был подключен в 1 порт USB, потом в второй порт и так далее.
Проблема в том, что команды хоть и показывает подробную информацию об всех подключённых USB и портах, но она ни как не покажет что накопитель был подключен в определённый порт. То есть воткну я тестовую флешку в 1 порт или в 10, результат всегда один и тот же, до последней запятой. Применяемая команда эта.
Code
1
gwmi Win32_USBControllerDevice |%{[wmi]($_.Dependent)} | Sort Manufacturer,Description,DeviceID | Ft -GroupBy Manufacturer Description,Service,DeviceID
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
16.06.2024, 15:42
Ответы с готовыми решениями:

Как определить тип порта USB, к которому подключена флэшка?
Здравствуйте, форумчане. Задача такая. Есть флэшка USB3.0. Есть ПК, в котором есть порты как USB2.0, так и USB3.0. Моя программа...

Как под Linux определить тип порта USB, к которому подключена флэшка?
Здравствуйте, форумчане. Задача такая. Есть флэшка USB3.0. Есть ПК, в котором есть порты как USB2.0, так и USB3.0. Моя программа...

Как узнать напряжение на D- USB кабеля, который подключен в USB порт компьютера?
У меня есть небольшое устройство, которое выдаёт не больше 5В 500mA, каким образом на компьютере можно узнать напряжение на D- usb кабеля? ...

12
Эксперт .NET
 Аватар для Rius
13078 / 7639 / 1669
Регистрация: 25.05.2015
Сообщений: 23,243
Записей в блоге: 14
16.06.2024, 15:54
Посмотрите в проге usbdeview
https://www.nirsoft.net/utils/... _view.html
0
0 / 0 / 0
Регистрация: 16.06.2024
Сообщений: 6
16.06.2024, 16:41  [ТС]
Цитата Сообщение от Rius Посмотреть сообщение
Посмотрите в проге usbdeview
https://www.nirsoft.net/utils/... _view.html
Прога мощная, вывела 100500 параметров. Сохранил их в excel, после переткнул флешку в другой USB порт и так же скопировал в табличку. После провел сравнение всех результатов. Увы все совпало, кроме времени когда флешка была подключена последний раз.
0
Эксперт .NET
 Аватар для Rius
13078 / 7639 / 1669
Регистрация: 25.05.2015
Сообщений: 23,243
Записей в блоге: 14
16.06.2024, 17:00
В диспетчере устройств при группировке по подключению разница есть:

0
Эксперт .NET
 Аватар для Rius
13078 / 7639 / 1669
Регистрация: 25.05.2015
Сообщений: 23,243
Записей в блоге: 14
16.06.2024, 17:01
А в этой проге еще более:

https://www.uwe-sieber.de/usbt... l#download

1
0 / 0 / 0
Регистрация: 16.06.2024
Сообщений: 6
17.06.2024, 11:38  [ТС]
Спасибо, утилита действительно показывает конкретный хаб и порт подключённого носителя. Там же https://www.uwe-sieber.de/misc... istusbdevs есть более упрощённая утилита ListUsbDevs V1.0.0 - Lists USB Devices но не представляю как полученные с них данные передать или сохранить в текстовом виде.
0
Любознательный
 Аватар для YuS_2
7404 / 2254 / 360
Регистрация: 10.03.2016
Сообщений: 5,213
17.06.2024, 11:50
Цитата Сообщение от Aleks40 Посмотреть сообщение
Подскажите как сделать определение хоть какого идентификатора USB порта?
только через реестр
что-то типа:
PowerShell
1
2
3
$dinfo = (gcim win32_usbcontrollerdevice).dependent.deviceid|
%{gp -path "HKLM:\SYSTEM\CurrentControlSet\Enum\$_"}
$dinfo|select address,mfg,classguid,devicedesc,hardwareid,locationinformation
2
Эксперт .NET
 Аватар для Rius
13078 / 7639 / 1669
Регистрация: 25.05.2015
Сообщений: 23,243
Записей в блоге: 14
17.06.2024, 11:50
Цитата Сообщение от Aleks40 Посмотреть сообщение
но не представляю как полученные с них данные передать или сохранить в текстовом виде.
В USB Device Tree Viewer, вероятно, стандартный оконный компонент Windows - ListView, поэтому по нему можно погулять с помощью WinAPI.
Отслеживание сообщений от Windows
https://learn.microsoft.com/ru... ew=vs-2022

См. след. пост.


С ListUsbDevs вывод просто получить, перенаправив его в файл или захватив сразу в переменную.
Коль вы кодите на PowerShell, это не должно быть проблемой.
0
Любознательный
 Аватар для YuS_2
7404 / 2254 / 360
Регистрация: 10.03.2016
Сообщений: 5,213
17.06.2024, 11:53
Цитата Сообщение от Aleks40 Посмотреть сообщение
не представляю как полученные с них данные передать или сохранить в текстовом виде.
почитать документацию:
Params:
UsbTreeView [/R=filename] [/X=filename] [/O=filename] [/L[n]=logfile]

/S=<searchfor> pre-fill the search textbox with the given text
/R=<filename> write (silently) a text report to filename
/X=<filename> write (silently) an XML report to filename
/O=<filename> open an XML report from filename
/L[n]=<logfile> write a logfile for debugging, helpful in case of crash or hang (causes slowdown);
n is the optional loglevel, 0..5, default is 3; sample: /L4=C:\temp\UsbTreeView.log
2
0 / 0 / 0
Регистрация: 16.06.2024
Сообщений: 6
17.06.2024, 15:30  [ТС]
Цитата Сообщение от Rius Посмотреть сообщение
С ListUsbDevs вывод просто получить, перенаправив его в файл или захватив сразу в переменную.
Коль вы кодите на PowerShell, это не должно быть проблемой.
PowerShell слабо разбираюсь. Просто lелаю макросами на VBA, а там вытянуть данные по железу можно через PowerShell. Таким способом ищу похожие примеры что б использовать их. Про перенаправление в файл не знал, но по указанному направлению понял как происходит. Использовал метод импортирования и конвертации в файл CSV.
Code
1
C:\script\ListUsbDevs.exe /s | ConvertTo-Csv -NoTypeInformation | Out-File C:\script\output.csv
Code
1
C:\script\ListUsbDevs.exe | Export-Csv  "C:\script\output.csv"
В каталоге C:\script файл создается, но в нем сохранена только запись #TYPE System.String
Length и в колонке какие то цифры.
0
Эксперт .NET
 Аватар для Rius
13078 / 7639 / 1669
Регистрация: 25.05.2015
Сообщений: 23,243
Записей в блоге: 14
17.06.2024, 18:55
PowerShell
1
.\ListUsbDevs.exe | Out-File r:\file.txt
0
Любознательный
 Аватар для YuS_2
7404 / 2254 / 360
Регистрация: 10.03.2016
Сообщений: 5,213
17.06.2024, 21:18
Цитата Сообщение от Aleks40 Посмотреть сообщение
C:\script\ListUsbDevs.exe | Export-Csv
если таки нужен csv, то...
можно так:
PowerShell
1
2
3
4
5
6
7
$dinfo = (gcim win32_usbcontrollerdevice).dependent.deviceid|%{
    $a = gp -path "HKLM:\SYSTEM\CurrentControlSet\Enum\$_"
    $a|add-member -NotePropertyName DeviceID -NotePropertyValue $_
    $a
}
$dinfo|select deviceid,address,mfg,classguid,devicedesc,locationinformation |
? locationinformation -match 'port'|convertto-csv|out-file usb.csv
1
 Аватар для volodin661
6673 / 2266 / 346
Регистрация: 10.12.2013
Сообщений: 7,833
17.06.2024, 23:08
Цитата Сообщение от Aleks40 Посмотреть сообщение
Хочу автоматизировать процесс.
Цитата Сообщение от Aleks40 Посмотреть сообщение
Сохранил их в excel,
Цитата Сообщение от Aleks40 Посмотреть сообщение
Просто lелаю макросами на VBA

Aleks40,

не надо никаких CSV/VBA/EXCEL,

все задачи по автоматизации процессов делаются 'ОТ' и 'ДО' на powershell.
он для этого и был создан.

* да и дороговат твой excel. $200; откуда у народа деньги ?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
17.06.2024, 23:08
Помогаю со студенческими работами здесь

Как получить данные с USB порта?
Всем привет! Сразу скажу,что с портами раньше дела не имел и для меня они темный лес. Задача такая.Некое устройство,время от времени...

USB 2.0 накопитель не обнаруживается в USB 2.0 портах
столкнулся с проблемой что флешкарты DTSE9, на 16 и 32 ГБ не обнаруживаются в USB2 портах, винда пишет ошибку что устройство не опознано, а...

ПК, к которому можно получить доступ только с USB ключом
Добрый день, уважаемые! Задался я идеей, запаролить свой ноутбук по максимуму. Моя ОС - win 8.1 Поставил пароль на биос, Зашифровал...

Составить программу тестирования параллельного порта, к которому подключен принтер
Здравствуйте. Прошу вас о помощи в связи с тем, что сам плохо разбираюсь в ассемблере. Вот само задание: Составить программу...

Устройство usb работающее через библиотеку dll обратившись к которому можно получить 24 В
Добрый день уважаемые форумчане !!! Сразу скажу в Таких вопросах серьезно плаваю ... так сильно не пинайте. Хотелось бы без лишних...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Первый деплой
lagorue 16.01.2026
Не спеша развернул своё 1ое приложение в kubernetes. А дальше мне интересно создать 1фронтэнд приложения и 2 бэкэнд приложения развернуть 2 деплоя в кубере получится 2 сервиса и что-бы они. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит: токи, напряжения и их 1 и 2 производные при t = 0;. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru