Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> CD-ROM, Определить тип 
:(
    Опции темы
simsmann
Дата 3.10.2008, 15:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 75
Регистрация: 26.11.2006

Репутация: нет
Всего: нет



Как определить CD-ROM физический или виртуальный
PM MAIL   Вверх
Virtuals
Дата 5.10.2008, 12:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 476
Регистрация: 27.11.2006

Репутация: 3
Всего: 11



simsmann, Никак!, в виндах все устройства виртуальные
во многих случаях можно попробовать по имени сдрома, но если пользователь захочет то фиг определиш smile 
PM MAIL ICQ   Вверх
Alexeis
Дата 5.10.2008, 13:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 109
Всего: 459



На самом деле можно, не зря у Daemon Tools есть разные режимы эмуляции, однако даже его определяют.


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Virtuals
Дата 5.10.2008, 16:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 476
Регистрация: 27.11.2006

Репутация: 3
Всего: 11



Alexeis, на каждый хитрый ..., есть ... с лабиринтом, на каждую... с лабиринтом есть ... с навигатором... на каждый ... с навигатором, есть ... с криптозащитой.!
и так до бесконечности.
в конечном итоге проигрывает защита, т.к. в виндах все железо виртуально smile 
PM MAIL ICQ   Вверх
Virtuals
Дата 5.10.2008, 17:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 476
Регистрация: 27.11.2006

Репутация: 3
Всего: 11



вопрос только во времени и цене, старфорс тоже проиграл - вопрос только в целесообразности взлома и времени на это потраченом
PM MAIL ICQ   Вверх
Alexeis
Дата 5.10.2008, 17:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 109
Всего: 459



  Все это не так важно, важно что определить можно это факт, значит вопрос переходит от категории можно-нельзя в категорию "как это сделать?"
  Винда же умеет определять физические устройства. Наверное можно посчитать число физических устройств и общее, если они разнятся, то есть виртуальные. Кроме того можно составить базу имен драйверов программ виртуальных приводов. И искать их.


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Virtuals
Дата 5.10.2008, 18:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 476
Регистрация: 27.11.2006

Репутация: 3
Всего: 11



система защиты "старфорс" именно призвана защитится от виртуализации сдром, погуглим что есть старфорс, и для себя поймем чего это стоило smile . имхо "игра не стоит свеч"
PM MAIL ICQ   Вверх
Riply
Дата 5.10.2008, 18:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Комодератор
Сообщений: 572
Регистрация: 27.3.2007
Где: St. Petersburg

Репутация: 3
Всего: 32



Цитата(simsmann @  3.10.2008,  15:40 Найти цитируемый пост)
Как определить CD-ROM физический или виртуальный 


Как-то мне понадобилось перебрать логические диски (стандартный способ мне не подходил).
Попробовала пойти таким путем:
Получаем "device information" вызовом:
SetupDiGetClassDevsExW(nil, nil, 0, DIGCF_ALLCLASSES or DIGCF_DEVICEINTERFACE or DIGCF_PRESENT, nil, nil, nil);
Далее при помощи SetupDiEnumDeviceInfo перебираем устройства системы, отсеивая лишние.
Я оставляла только: SysClassGuid_CDROM, SysClassGuid_DiskDrive, SysClassGuid_FloppyDisk
(GUID этих классов есть в MSDN (имена мои - по ним не искать))
Для каждого из оставшихся устройств, перебираем его MountPoints при помощи DeviceIoControl
(с кодами: IOCTL_DISK_GET_DRIVE_LAYOUT_EX, IOCTL_MOUNTMGR_QUERY_POINTS).
Вот, вроде все.
Так к чему это я ? Ах да !
Как я не старалась, виртуальные устойства в мой список не попадали. smile
(убирала фильтрацию, меняла параметры запросов и т.д. и т.п).
(В результате пришлось писать дополнительну процедуру, находящую и то и другое).

Итого: можно получить список "настоящих устройств" способом, описанным выше, и посмотреть
есть ли там подопытное устройство smile

P.S.
 Тогда у меня не было цели определить "виртуальность" чего-то,
 просто в процессе "научного тыка" случайно натолкнулась smile
 Соответственно, данный алгоритм не проходил жесткое тестирование
 на безошибочность работы именно с этой точки зрения.

Добавлено через 11 минут и 44 секунды
Цитата(Riply @  5.10.2008,  18:10 Найти цитируемый пост)
не проходил жесткое тестирование


На всякий случай повторюсь: целью описанного способа не было определение виртуальности.
Просто я запомнила свои мучения(безрезультатные) заставить его добавлять и виртуальные smile
Поэтому претензии типа "а вот это он пропускает" не принимаются smile

PM MAIL   Вверх
Virtuals
Дата 5.10.2008, 18:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 476
Регистрация: 27.11.2006

Репутация: 3
Всего: 11



Riply, хм странно алкоголевские виртуалки, (примонтированные) обязанны были туда попасть...

ЗЫ
вернемся к основам
программы из юзермоде, в виндах по определению не работают с аппаратной частью, отсюда любой драйвер покажет все что хочется.
а в 0кольце "кто первый влез того и тапки" smile 

ЗЫ //старфорс защита ставит целую коллекцию дров (кстати красиво роняющих систему во многих случаях) только с целью добратся до аппаратной части привода, и попытки прочесть хитрые данные с хитрого диска. smile и их спасает только постоянное обновление софта....
PM MAIL ICQ   Вверх
Riply
Дата 5.10.2008, 22:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Комодератор
Сообщений: 572
Регистрация: 27.3.2007
Где: St. Petersburg

Репутация: 3
Всего: 32



Цитата(Virtuals @  5.10.2008,  18:26 Найти цитируемый пост)
Riply, хм странно алкоголевские виртуалки, (примонтированные) обязанны были туда попасть...


Да я и не спорю ибо не проверяла smile
Я описала с чем столкнулась, только для того чтобы дать информацию к размышлению.
Т.е. может попробовать начинать танцевать с "уровня" физических устройств (драйверов или их классов)
и уже оттуда спускаться к логическим, попути фильтруя лишнее ?
PM MAIL   Вверх
BaD_SeCt0R
Дата 6.10.2008, 00:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Lazy Coder
**


Профиль
Группа: Участник
Сообщений: 432
Регистрация: 9.10.2006
Где: Анапа

Репутация: 4
Всего: 18



Может, каким-нибудь образом прочитать информацию из BIOS'а?


--------------------
Кто владеет информацией - владеет миром. (С) Френсис Бэкон.
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0517 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.