Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Как считать логические имена подключенных MSD / 8 сообщений из 8, страница 1 из 1
25.10.2012, 10:28
    #38012497
AlexandrPlus
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как считать логические имена подключенных MSD
Привет
сабж
MSD - Mass Storage Device
...
Рейтинг: 0 / 0
25.10.2012, 11:32
    #38012610
bazile
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как считать логические имена подключенных MSD
AlexandrPlus, DriveInfo.GetDrives
...
Рейтинг: 0 / 0
29.10.2012, 13:25
    #38016895
AlexandrPlus
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как считать логические имена подключенных MSD
bazileAlexandrPlus, DriveInfo.GetDrives

спасибо

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

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

ЗЫ На Delphi и на Java не смог ничего найти кроме как вызовов из виндовских же dll, что конечно роднее делать на C#
ЗЫ На С++ заморочено много. На C для GUI под последние Windows мало что найдешь. И т.п.
...
Рейтинг: 0 / 0
30.10.2012, 19:46
    #38019315
bazile
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как считать логические имена подключенных MSD
AlexandrPlus, мне неизвестны как это сделать в .NET. Возможно через WMI можно получить нужную информацию. Если нет, то используй P/Invoke для вызова функций WinAPI.
...
Рейтинг: 0 / 0
31.10.2012, 09:53
    #38019608
AlexandrPlus
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как считать логические имена подключенных MSD
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
03.11.2012, 10:05
    #38024316
AlexandrPlus
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как считать логические имена подключенных MSD
bazileAlexandrPlus, мне неизвестны как это сделать в .NET. Возможно через WMI можно получить нужную информацию. Если нет, то используй P/Invoke для вызова функций WinAPI.

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

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

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


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