|
|
| Посл.отвђт | Сообщенiе |
|
|
Дата: Апр 12, 2004 10:54:21 Здравствуйте! Сейчас занимаюсь флоппиками и различными операциями с ними. Возникли сразу несколько волпросов по "железным" темам. Подскажите, пожалуйста, решения этих задачек. Никогда с железом дела не имел, так что вопросы могут быть более чем дубовыми ;-) (Всё, что я пишу должно работать на Windows 2000) 1) Как определить колличество свободного места и занятого пространства на дискете (в кб)? Я заюзал GetDiskFreeSpace, но не понял, как получить размер в килобайтах. 2) Можно ли получить марку дисковода и другую информацию о дисководе и как это реализовать? (или для этого нужно писать драйвер?). Информация: имя привода, какие для него дискеты он используются. (788 | 1, 44 | ...) ну и ещё что-нибудь интересное. 3) Как определить наличие сбойных кластеров (об этом вообще не подозреваю ;) на дискете? 4) Как создать образ дискеты в виде FDI? (Может быть есть библиотека или сорсы???) и как его туды записать. Заранее спасибо! 1990 |
|
|
Дата: Апр 12, 2004 11:54:56 Насчет 788, 1.44... Шли IOCTL_STORAGE_GET_MEDIA_TYPES девайсу. У мя был простенький пример. Найду - кину. |
|
|
Дата: Апр 12, 2004 13:17:15 Four-F Буду ждать. ;) А то никаких исходников вообще нет. А может быть есть что-то ещё? |
|
|
Дата: Апр 12, 2004 14:29:02 Ответы на первый и четвёртый вопросы нашёл. Но теперь появился ещё один вопрос: Как можно узнать имя производителя дискеты? |
|
|
Дата: Апр 12, 2004 15:05:52 [ 1990: Я заюзал GetDiskFreeSpace, но не понял, как получить размер в килобайтах. ] local dwSectorsPerCluster:DWORD
local dwBytesPerSector:DWORD
local dwNumberOfFreeClusters:DWORD
local dwTotalNumberOfClusters:DWORD
invoke GetDiskFreeSpace, $CTA0("A:"), addr dwSectorsPerCluster, addr dwBytesPerSector, \
addr dwNumberOfFreeClusters, addr dwTotalNumberOfClusters
mov eax, dwNumberOfFreeClusters
mov ecx, dwSectorsPerCluster
mul ecx
mov ecx, dwBytesPerSector
mul ecx
; eax = free space
[ 1990: Можно ли получить марку дисковода и другую информацию о дисководе и как это реализовать? ] А флоп вообще-то какой-нить ROM имеет? [ 1990: Как определить наличие сбойных кластеров ] Ищи на sysinternals.com статью "Inside Disk Defragmenting". Насчет сбойных кластеров не помню, но карту распределения кластеров получишь. Там и сорс был. Нужен будет IFS KIT. К исходнику я ещё инклуды кое-какие приаттачил, т.к. не помню есть ли они в KmdKit. 1479110098__flop.rar |
|
|
Дата: Апр 12, 2004 17:31:45 · Поправил: 1990 Four-F Большое спасибо!!! Статью буду искать. А флоп вообще-то какой-нить ROM имеет? Я не понял вопроса - это о производителе? |
|
|
Дата: Апр 12, 2004 17:47:48 А флоп вообще-то какой-нить ROM имеет? Я не понял вопроса - это о производителе? должна же информация о производителе где-то храниться |
|
|
Дата: Апр 12, 2004 19:03:02 Наверное должна. ;) А как быть с маркой дискеты? |
|
|
Дата: Апр 12, 2004 19:22:06 Дорогой друг 1990, скажи мне для кого и чего ведется раздел ИСХОДНИКИ? Когда лениться перестанем? http://wasm.ru/src/6/drive_info.zip |
|
|
Дата: Апр 12, 2004 21:24:58 · Поправил: 1990 KiNDeR Скажу - для меня ;). Я ещё давно скачал этот исходник. Теперь использую, но всех ответов он не даёт ... Спасибо однако за информацию! А лень - друг человека! ;) |
|
Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.073 |