Серийный номер флешки

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Серийный номер флешки

Сообщение Antonariy » 08.02.2007 (Чт) 16:53

Как получить? Два часа ковырялся в WMI, ничего не нашел. Но ведь как-то USBDeview эти номера определяет...
Вложения
flash.gif
(10.45 Кб) Скачиваний: 144
Лучший способ понять что-то самому — объяснить это другому.

Dmitriy2003
Постоялец
Постоялец
 
Сообщения: 690
Зарегистрирован: 27.05.2003 (Вт) 22:47
Откуда: Deutschland

Сообщение Dmitriy2003 » 08.02.2007 (Чт) 23:16

http://borland.xportal.ru/forum/viewtopic.php?t=1491&start=0&postdays=0&postorder=asc&highlight=&sid=c93a881004f1dc46ee4c5929396116e6

это не ответ это пища для размышлений. Я кстати пробовал Через DeviceIOControl, :( но увы. :(
Dmitrich

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Сообщение Antonariy » 09.02.2007 (Пт) 10:42

Серийный номер винта плучить не проблема, мне нужна флешка.
Лучший способ понять что-то самому — объяснить это другому.

Dmitriy2003
Постоялец
Постоялец
 
Сообщения: 690
Зарегистрирован: 27.05.2003 (Вт) 22:47
Откуда: Deutschland

Сообщение Dmitriy2003 » 09.02.2007 (Пт) 22:44

Понимаю :) что флешка

Вероятно это все еще не ответ:

Код: Выделить всё

Dim obj, objs, buf, PnPID

'Get the PnPDevice ID
Set objs = GetObject("winmgmts:").InstancesOf("Win32_DiskDrive")
'
For Each obj In objs
    If obj.InterfaceType = "USB" Then
        PnPID = obj.PnPDeviceID
    End If
Next

'fix up the PnPDevice ID to make it suitable for comparing against the Association
PnPID = Replace(PnPID, "\", "\\") & Chr(34)

' Use WMI associations to pair up USBContoller and PnPEntity
Set objs = GetObject("winmgmts:").InstancesOf("Win32_USBControllerDevice")
For Each obj In objs
     If Right(obj.Dependent, Len(PnPID)) = PnPID Then
          MsgBox (PnPID & vbCr & obj.Dependent & vbCr & obj.Antecedent)
     End If
Next
Вложения
USBDev_vs_WMI.gif
(16.37 Кб) Скачиваний: 104
Dmitrich

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Сообщение Antonariy » 10.02.2007 (Сб) 0:10

Респект :) До такого я бы ни в жисть не додумался. Проверю в понедельник. Моя личная флешка "потеряла" свой серийник после событий, описанных здесь. Если посмотреть на мой скриншот, то там осталась ее запись до этих событий - 3я строка. Сейчас она определяется как первая строка, без всякого серийного номера. Получается серийный номер сохраняется заодно в реестре, только я его там не нашел.
Лучший способ понять что-то самому — объяснить это другому.

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Сообщение Antonariy » 12.02.2007 (Пн) 10:32

Да, это оно :cheers:
Причем оно показывает серийник только когда флешка подключена, так что второй вопрос не будет задан :)
Зато есть третий вопрос. Как по букве диска определить, флешка это, винт или еще что?
Лучший способ понять что-то самому — объяснить это другому.

dr.MIG
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1441
Зарегистрирован: 18.12.2004 (Сб) 9:53
Откуда: г.Ярославль

Сообщение dr.MIG » 12.02.2007 (Пн) 12:47

API: GetDriveType
WMI: свойство Description класса Win32_LogicalDisk
Salus populi suprema lex

Dmitriy2003
Постоялец
Постоялец
 
Сообщения: 690
Зарегистрирован: 27.05.2003 (Вт) 22:47
Откуда: Deutschland

Сообщение Dmitriy2003 » 12.02.2007 (Пн) 19:33

2 Antonariy

если сможеш протестировать на связке USB -> PCMCIA -> PCI, дай знать очень интересно определит или нет. к сожалению у меня счас лаптопа нету. :)
Dmitrich

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Сообщение Antonariy » 13.02.2007 (Вт) 9:41

Не смогу, но предполагаю, что должно. Это же определенный стандарт, не важно через какое железо реализуется.
Лучший способ понять что-то самому — объяснить это другому.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: SemrushBot, Yandex-бот и гости: 93

    TopList