FoxPro Club Главная

Конференция Решения Фотоальбом Сайт М.Дроздова Статьи Файловый архив Книга Visual FoxPro 9.0 Русский Help для Visual FoxPro
Пользователей: 9112
Вход
Определение модели, ревизии и серийного номера HDD0

Попытка перевода http://www.winsim.com/diskid32/diskid32.cpp под влиянием исходников, закинутых на форум Вадимом Пирожковым. Оказалось велосипед и баян ;) http://www.profox.ro/Forum/tabid/55/forumid/13/threadid/153/scope/posts/Default.aspx Писалось под VFP9SP1


 
Прислал: Радченко Виктор Вадимович   Категория: Система

Сделайте оценку этого решения Плохо Удовлетворительно Так себе Хорошо Отлично Текущая оценка: (2.385)
Дополнения пользователей
Определение модели, ревизии и серийного номера HDD0
[+][?]
urfin
24.01.06 09:27:36

Вместо '\\.\PhysicalDrive0' можно написать :
'\\.\' + tcDriveName + ':' и получить модель и ревизию устройства на логическом диске tcDriveName.
Например второго HDD или CD-ROM.

urfin
24.01.06 12:08:47

Исправил ошибку в случае серийного номера с пробелом.
xen
31.01.06 00:36:31

urfin исправил ошибку, но никому не расскажет. :)

У меня не работает определение SN.
В этом решении неправильно используется функция DeviceIoControl(), точнее её параметры. В
lcInputBuffer серийным номером не пахнет, даже если увеличить размер буфера.

Так что используйте это пример:
http://www.profox.ro/Forum/tabid/55/forumid/13/threadid/153/scope/posts/Default.aspx 
urfin
31.01.06 06:31:54

Не вижу принципиальных отличий от того кода :
m.sci = REPLICATE(CHR(0),1024)
m.sco = REPLICATE(CHR(0),1024)
m.ret_buffersize = 0
m.otv = DeviceIoControl( handle,;
0x2D1400,@m.sci,LEN(sci),@m.sco,LEN(sco),;
@m.ret_buffersize,0)
Размер результата не нужен.
Проверил на 10 машинах под WinXP - работает корректно.
[Дополнить]



© 2000-2017 Fox Club 
При размещении любых материалов с сайта на других ресурсах- прямая ссылка на www.foxclub.ru обязательна
Яндекс.Метрика