Сергій

Разработчик
Сообщения
498
Реакции
263
Баллы
298
Столкнулся с такой задачей на работе:
Если в комп подключают флешку с заведомопозволенньім номером, то она работает. Если подключают неизвестную, то она сразу извлекается (до запуска autorun.inf) или просто не подключается.
Как это реализовать программно?
Может опираясь на то, что если флешка неизвестна, то это новое оборудование, и нужно просто как-то запретить подключение нового оборудования?
 
Последнее редактирование модератором:

Dragokas

Very kind Developer
Команда форума
Супер-Модератор
Разработчик
Клуб переводчиков
Сообщения
6,387
Реакции
5,879
Баллы
718
А отключить автозапуск не вариант?
У Вас система XP ?
 

regist

гоняюсь за туманом
Ассоциация VN/VIP
VIP
Разработчик
Сообщения
12,650
Реакции
5,905
Баллы
1,008

Dragokas

Very kind Developer
Команда форума
Супер-Модератор
Разработчик
Клуб переводчиков
Сообщения
6,387
Реакции
5,879
Баллы
718
Можете заблокировать через групповые политики по GUID флеш-накопителя.
Подробнее в этом и этом руководствах.

Только учтите, что это блокирует установку драйверов. Но если флешка уже побывала в системе, сперва необходимо зайти в Диспетчер устройств -> вид -> показать скрытые устройства, затем в ветви "Дисковые устройства" удалить затенённые драйвера от предыдущих флеш-накопителей. Иначе эффекта от политики не будет.
Если хотите сами написать какое-то более гибкое средство, то для отслеживания подключения устройств необходимо зарегистрировать системное уведомление, которое будет приходить в виде сообщения
DBT_DEVICEARRIVAL окну Вашей программы. Соответственно, у Вас в программе должна быть реализация сабклассинга оконных сообщений.

Альтернативно, можно воспользоваться готовыми инструментами, например, службой USBDLM от Uwe Sieber для отслеживания подключения нового устройства. Пример практической реализации можно посмотреть внутри AntiHidden. А для отключения флешки можно взять RemoveDrive от того же автора. Учтите, что при этом установка драйвера не блокируется и автозапуск (если он настроен) сработает.
 
Последнее редактирование:

Сергій

Разработчик
Сообщения
498
Реакции
263
Баллы
298
А отключить автозапуск не вариант?
У Вас система XP ?
_ Начальница возмущается, что втьікают флешки все кому непопадя. А программно извлекая флешку после срабатьівания авторана, мьі рискуем получить вакцину от нашей программьі
_ да, ХР
 
Сверху Снизу