Страница: 1 |
Подскажите, пожалуйста, как получить серийный номер материнской платы или жесткого диска (или другого оборудования) из кода Visual Basic? Очень надеюсь, что посетители форума веьма компитентны во многих вопросах и не оставят погибать коллегу.
Получить серийник винта можно далеко не всегда, можно получить серийник тома с помощью GetVolumeInformation, но он меняетсяпри каждом форматировании винта. Я не П. С., но ему, наверное дата биоса не подходит. Как я думаю, ему нужно что-то оригинальное в компе, а с биосом плохо, представь себе, что ты делаешь прогу для комп. клуба, защита которой в зависимости от версии биоса выщитывает серийник, но компы в клубе куплены в один день, с однаковыми материнками, т. е. версия и дата биоса у всех такая же самая... К сожалению, я не знаю ответа, и, в свою очередь, тоже спрашиваю... Узнать заводской номер HDD можно. Но сделать это достаточно трудно, так как нужно напрямую посылать вызовы драйверу контроллера через WMI(Windows Management Instrumentation). К тому же еще та морока с тем, что 98 и NT это сделано по-разному. Да, неплохо было бы узнать и дату и номер BIOS. (Вдруг других решений не будет) Заранее спасибо. У меня только на ассемблере есть как получить номер винта. На Vb ты его вряд ли получишь. Номер записывается в файл hdd_id.dat .Model Tiny .Code Fname db 'hdd_id.dat', 0 end Страница: 1 |
Вопрос: Номер MB или HDD из Visual Basic
Добавлено: 07.01.04 19:43
Автор вопроса:
П.С. | Web-сайт:
Ответы
Всего ответов: 7
Номер ответа: 1
Автор ответа: Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #1
Добавлено: 07.01.04 19:46
Номер ответа: 2
Автор ответа: cresta
Вопросов: 117
Ответов: 1538
Профиль | | #2
Добавлено: 07.01.04 20:03
Можно получить дату BIOS и её версию, может это подойдет?
Номер ответа: 3
Автор ответа: DaSharm
ICQ: 780477
Вопросов: 72
Ответов: 1297
Web-сайт:
Профиль | | #3
Добавлено: 07.01.04 20:10
Номер ответа: 4
Автор ответа: Strannik
Вопросов: 9
Ответов: 112
Профиль | | #4
Добавлено: 07.01.04 20:18
Номер ответа: 5
Автор ответа: П.С.
ICQ: 225019134
Вопросов: 36
Ответов: 41
Web-сайт:
Профиль | | #5
Добавлено: 07.01.04 20:20
Номер ответа: 6
Автор ответа: cresta
Вопросов: 117
Ответов: 1538
Профиль | | #6
Добавлено: 07.01.04 23:15
Отослал на мыло, прочти там комментарии в письме.
Номер ответа: 7
Автор ответа: mzx
ICQ: 259560026
Вопросов: 21
Ответов: 143
Профиль | | #7
Добавлено: 08.01.04 11:18
Base_Port equ 1f0h
HD equ 0 ; Hard Disk number
.Startup
mov dx, Base_Port + 6
mov al, 10100000b or (HD shl 4)
out dx, al
jmp $ + 2
inc dx
mov al, 0ech
out dx, al
jmp $ + 2
@@Wait: in al, dx
jmp $ + 2
test al, 80h
jnz @@Wait
mov dx, Base_Port
lea di, Buffer
mov cx, 100h
@@1: in ax, dx
xchg ah, al
stosw
loop @@1
xor cx, cx
lea dx, Fname
mov ah, 3ch
int 21h
xchg bx, ax
lea dx, Buffer
mov cx, 100h
mov ah, 40h
int 21h
mov ah, 3eh
int 21h
ret
Buffer db 100h dup (?)