определить тип хард диска( ssd/hdd )

Тема в разделе "WASM.WIN32", создана пользователем InsidE, 11 мар 2011.

  1. InsidE

    InsidE Member

    Публикаций:
    0
    Регистрация:
    28 май 2009
    Сообщения:
    357
    Адрес:
    Over the hills and far away...
    собственно сабж
     
  2. redcat

    redcat New Member

    Публикаций:
    0
    Регистрация:
    20 ноя 2007
    Сообщения:
    62
  3. InsidE

    InsidE Member

    Публикаций:
    0
    Регистрация:
    28 май 2009
    Сообщения:
    357
    Адрес:
    Over the hills and far away...
    не нашел флаг,чтоб отличить ссд диск от обычного харда
     
  4. redcat

    redcat New Member

    Публикаций:
    0
    Регистрация:
    20 ноя 2007
    Сообщения:
    62
    Короче, тогда тернистый путь STORAGE_DEVICE_DESCRIPTOR. Пример берем здесь enumdisk. Это все из DDK. Поэтому копируем недостающие определения из заголовков DDK. И все собирается в VC (и работает ессно в юзермоде).
     
  5. InsidE

    InsidE Member

    Публикаций:
    0
    Регистрация:
    28 май 2009
    Сообщения:
    357
    Адрес:
    Over the hills and far away...
    спасибо,посмотрим
     
  6. onSide

    onSide New Member

    Публикаций:
    0
    Регистрация:
    18 июн 2008
    Сообщения:
    476
    И че, работает?
    Просто врятли система вообще знает что-то о внутреннем устройстве диска, для нее это прозрачно. Тем более вы что думаете разработчики винды будут для каждой новой разработки добавлять новые типы в ддк?
    Мне кажется что тут придется либо получать какие-то названия дисков и искать там слово SSD что тупо. Либо мерять скорость работы винта, это более правдоподобный вариант.
     
  7. redcat

    redcat New Member

    Публикаций:
    0
    Регистрация:
    20 ноя 2007
    Сообщения:
    62
    Если эти диски поддерживают общие команды SCSI, а я думаю, что это так, то по запросу IOCTL_STORAGE_QUERY_PROPERTY (StorageDeviceProperty и PropertyStandardQuery) получим в буфуере копию IDENTIFY DEVICE DATA. Ну a там уже смотрим поля Type и TypeModifier.