powered by simpleCommunicator - 2.0.58     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Как считать логические имена подключенных MSD
8 сообщений из 8, страница 1 из 1
Как считать логические имена подключенных MSD
    #38012497
Фотография AlexandrPlus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет
сабж
MSD - Mass Storage Device
...
Рейтинг: 0 / 0
Как считать логические имена подключенных MSD
    #38012610
bazile
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexandrPlus, DriveInfo.GetDrives
...
Рейтинг: 0 / 0
Как считать логические имена подключенных MSD
    #38016895
Фотография AlexandrPlus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bazileAlexandrPlus, DriveInfo.GetDrives

спасибо

ещё вот есть что-то, что сопоставляло бы Label с записью об устройстве в реестре?
...
Рейтинг: 0 / 0
Как считать логические имена подключенных MSD
    #38017099
bazile
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexandrPlusещё вот есть что-то, что сопоставляло бы Label с записью об устройстве в реестре?
С какой именно информацией нужно выполнить сопоставление и для чего?
...
Рейтинг: 0 / 0
Как считать логические имена подключенных MSD
    #38019290
Фотография AlexandrPlus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bazileAlexandrPlusещё вот есть что-то, что сопоставляло бы Label с записью об устройстве в реестре?
С какой именно информацией нужно выполнить сопоставление и для чего?

мне нужно по Label (или ещё по каким-нибудь данным) USB-MSD определить в какой usb-концентратор
на материнской плате воткнуто это запоминающее устройство через usb-разъем, чтобы это устройство контролировать через, например, setupapi.dll

ЗЫ На Delphi и на Java не смог ничего найти кроме как вызовов из виндовских же dll, что конечно роднее делать на C#
ЗЫ На С++ заморочено много. На C для GUI под последние Windows мало что найдешь. И т.п.
...
Рейтинг: 0 / 0
Как считать логические имена подключенных MSD
    #38019315
bazile
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexandrPlus, мне неизвестны как это сделать в .NET. Возможно через WMI можно получить нужную информацию. Если нет, то используй P/Invoke для вызова функций WinAPI.
...
Рейтинг: 0 / 0
Как считать логические имена подключенных MSD
    #38019608
Фотография AlexandrPlus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bazileAlexandrPlus, мне неизвестны как это сделать в .NET. Возможно через WMI можно получить нужную информацию. Если нет, то используй P/Invoke для вызова функций WinAPI.

WMI - это вроде как БД про всё оборудование
вот пример на VBScript обращения к WMI

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
strComputer = "."

WScript.Echo "Накопители:"

set objWMI = GetObject("winmgmts:\" & strComputer & "rootcimv2")

set colDisks = objWMI.ExecQuery("select * from Win32_DiskDrive")

for each objDisk in colDisks

WScript.Echo " Заголовок: " & vbTab & objDisk.Caption

WScript.Echo " ID устройства: " & vbTab & objDisk.DeviceID

WScript.Echo " Производитель: " & vbTab & objDisk.Manufacturer

WScript.Echo " Тип носителя: " & vbTab & objDisk.MediaType

WScript.Echo " Модель: " & vbTab & objDisk.Model

WScript.Echo " Имя: " & vbTab & objDisk.Name

WScript.Echo " Разделы: " & vbTab & objDisk.Partitions

WScript.Echo " Размер: " & vbTab & objDisk.Size

WScript.Echo " Состояние: " & vbTab & objDisk.Status

WScript.Echo

next



То есть оборудование как-то зарегистрировано при установке.
А когда мы втыкаем USB-накопитель, то его регистрация вроде не выполняется.

Но USB-концентратор как-то сообщает Виндовс через USB-хост, что вот мол в меня воткнулось то-то и то-то. Как вот эти сообщения перехватить? Так наверно.
...
Рейтинг: 0 / 0
Как считать логические имена подключенных MSD
    #38024316
Фотография AlexandrPlus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bazileAlexandrPlus, мне неизвестны как это сделать в .NET. Возможно через WMI можно получить нужную информацию. Если нет, то используй P/Invoke для вызова функций WinAPI.

всё, что нужно было, есть в cfgmgr32.dll и setupapi.dll
конечно и реестр здесь при чем

на Delphi вот и примерчики работающие нашел
http://rouse.drkb.ru/winapi.php

конечно аналогично можно сделать в C++ и C#
PS Здесь тот случай, когда не так важно на каком языке.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Как считать логические имена подключенных MSD
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]