gifts2017

Блокировка компа при отсутствии флешки (код от abadonna)

Опубликовал Константин Канделла (kandellaster) в раздел Администрирование - Защита, права, пароли

В продолжении темы http://www.infostart.ru/blogs/299/
Сама програмулька блокировки компа( автор кода abadonna), я только оформил и чуток добавил, в  частности, проверку на наличие накопителя в системе, чтоб не быть зависимым от буквы диска)

Производит проверку наличия всех дисков в системе,а также их тип чтоб выявить флеш-накопитель, при первом запуске.
Интервал минута, чтобы успеть воткнуть флешку например))

Скачать файлы

Наименование Файл Версия Размер
- 35
.1200551060 161,05Kb
25.09.09
35
.1200551060 161,05Kb Бесплатно

См. также

Подписаться Добавить вознаграждение
Комментарии
1. Аркадий Кучер (Abadonna) 17.01.08 02:39
Я потому и не стал пока выкладывать, что указывать букву диска - не комильфо ;))))
Должна сама определять какой диск флешкой является
2. Kandellaster (kandellaster) 17.01.08 03:12
ну попробую сегодня сделать))
3. Poppy (poppy) 17.01.08 03:28
Ставлю на Abadonnу, что он первым сделает... ;)

Может все таки указывать букву? У меня, разные флешки имеют разные буквы. Т.е. вставляю свою - работает, чужую - не работает.
Кроме флешки можно предусмотреть еще, например, SD-карточку или другой внешний накопитель?...
Che Bukashka; +1 Ответить
4. Kandellaster (kandellaster) 17.01.08 03:57
ха)) та я сам поставлю что он первым сделает))
5. Аркадий Кучер (Abadonna) 17.01.08 04:23
Я уже сделал, но выкладывать лень :)))
6. Аркадий Кучер (Abadonna) 17.01.08 04:36
2 Kandellaster
кури 2 API: GetLogicalDriveStrings и GetDriveType
7. Kandellaster (kandellaster) 17.01.08 04:48
8. Kandellaster (kandellaster) 17.01.08 06:15
что та курнул хорошо, так хорошо что C: определяется как сьемный
9. Kandellaster (kandellaster) 17.01.08 06:36
нормально)) готово проверяет все диски и если кто то из них является флешкой то все хорошо, если нет то блокируем
10. Олег Пономаренко (O-Planet) 17.01.08 07:40
А теперь дружно прыгаем на http://www.infostart.ru/blogs/299/ и смотрим комментарий №14
11. Аркадий Кучер (Abadonna) 17.01.08 08:44
Если не сделал - сделай обязательно!
На всякий случай (если прога помещается в автозагрузку), чтобы был интервал, хоть в минуту до выполнения проверок. Чтобы можно было успеть ее вырубить, если что-то не так пойдет, а то фиг в комп попадешь ;)
12. Kandellaster (kandellaster) 17.01.08 09:25
сделал при первом запуск ждем минуту и лиш потом блокирует
13. iddqd (iddqd) 20.01.08 20:18
Я правильно понял, что комп разблокируется, если всунуть любую флешку?
14. Kandellaster (kandellaster) 21.01.08 03:16
аха любую , но можеш доработать исходники прилагаются
15. GrayT Токарев (GrayT) 21.01.08 10:38
Если отработать системную мессагу WM_DEVICECHANGE можно обойтись без таймера. Да и вообще отказаться от использования VCL - нефих память жрать. Сделать в виде сервиса. Ну и намудрить с уникальностью флэшки. Три пальца так же банально отключаются.
Жаль к моим компам ни кто и так подойти не может :)
16. Аркадий Кучер (Abadonna) 21.01.08 10:50
А обрабатывать WM_DEVICECHANGE - не жрать память? Код запросто можно и без VCL написать.
И кого в наше время волнует 1.5 метра памяти?
Лично меня - не волнует ;)
17. GrayT Токарев (GrayT) 21.01.08 10:57
VCL не использовать - не жрать память. А DEVICECHANGE - отказаться от таймера
18. GrayT Токарев (GrayT) 21.01.08 10:59
+Да и не будет там полтора метра. килобайт 800 максимум :)
19. Kandellaster (kandellaster) 21.01.08 11:32
ну типа сервисом сделать да не вопрос, а вот идею об уникальности флешки нужно подумать ибо банальную проверку на существование некоего файла с некой инфой не улыбает использовать
20. GrayT Токарев (GrayT) 21.01.08 13:51
ну O-Planet предлагал интересную защиту, правда я не представляю как ее сделать :(.
Еще вариант, прописывать в реестре допустимые флэшки - какой-нить хэш от номера флэшки или еще какую инфу с флэшки прочитать можно.
21. Kandellaster (kandellaster) 21.01.08 14:01
на счет реестра это мысль ...
22. Валерий (VV) 21.01.08 14:14
Я разочарован. Для прикола запустил - работает. Вытащил флеху - заблокировалось. Обратно вставил - фиг, висит. Пришлось перегружать комп. А если мне во время рабочего дня надо с флешкой отойти куда по конторе? Воткну - и перегружаться? Не гуд. А если у меня 2-3 флешки воткнуты?
23. Kandellaster (kandellaster) 21.01.08 14:31
видимо что то у тебя уже там у самого не того ;-) нормально все работает
24. GrayT Токарев (GrayT) 21.01.08 14:31
"Обратно вставил - фиг, висит" - Да это не есть гуд :(
А еще надо предусмотреть вариант потерю/порчу флэшки :)
25. Kandellaster (kandellaster) 21.01.08 14:36
только что перепроверил 5 раз нормально все, а вариант с порчами и потерями флешки как предусмотреть то))) но одна идея есть сеня вечерком буду делать :)))
26. Kandellaster (kandellaster) 21.01.08 14:37
ну типа у кого еще фиг висит?))) скажите а то не хорошо получаетса у меня работает у других нет
27. Аркадий Кучер (Abadonna) 22.01.08 08:22
(22) Валерка, у тебя вечно всё висит ;)))
Не скажу за эту прогу, а моя с тем же кодом работает безотказно
28. GrayT Токарев (GrayT) 22.01.08 09:22
"а вариант с порчами и потерями флешки как предусмотреть то" - хыш спец пароля в реестре.
И еще.... Экстрималы могут прогуглить gina.dll и dWinLock. Жаль времени нет :(
29. Валерий (VV) 22.01.08 11:40
Мдя, Аркадий, вечно ты болезненно воспринимаешь критику :) Ну реально повисло, что я могу сделать? Может, потому что у меня 2003? Дома вечером повторно проверю, пробовал только на работе. А что, есть периодический опрос порта?
И как быть, если флешек несколько? Надо бы какой-то ини, а еще лучше - серийник флешки завязать на этом.
30. Kandellaster (kandellaster) 22.01.08 12:00
на счет использования сторонних компонент скажу что это уже совсем другая история там можно сделать покруче чем просто проверка на присутствие диска в общем уже занимаюсь данным делом
31. Аркадий Кучер (Abadonna) 22.01.08 13:02
2 vv. Ваще-то я код положил только ради трех строчек:
var akBlockInput: function(block: bool): Boolean; stdcall;
hDLL := LoadLibrary('user32.dll');
@akBlockInput := GetProcAddress(hDLL, 'BlockInput');
(не для всех это очевидно).
А уж что дальше с ним делать - дело вкуса ;)))))
32. Kandellaster (kandellaster) 22.01.08 14:05
а вот я нашел как скрыть инфу с неким паролем даже от посекторного сканирования сегодня на старой флешке буду опыты проводит а то чуется мне что при опытах таких можно напортить чуток ;)))
33. Валерий (VV) 22.01.08 14:17
Кому надо сканирование? Это же простой ключ! Я должен задать, что ключ - вот этот, и все. Кому надо, тот зайдет в автозагрузку и снесет запуск проги. Не надо мудрить, сделайте простую защиту, но удобную.
34. Kandellaster (kandellaster) 23.01.08 01:54
не волнуйтесь товарисч VV все делается именно по тому принципу который хотите ;)))
35. Валерий (VV) 23.01.08 12:42
Товарисч VV спокоен, как никогда :) Ждемс, хотя я и не сособо подвержен паранойе. Но пригодится.
36. Валерий (VV) 01.02.08 12:33
Аффтар завис? Проект накрылся?
37. Kandellaster (kandellaster) 01.02.08 13:27
аффтар слегка забегался ))
38. Poppy (poppy) 01.02.08 13:51
Не проще ли использовать специальную флеху?

http://www.tmk.ru/articles/view.php?art=33
Che Bukashka; +1 Ответить
39. Kandellaster (kandellaster) 03.02.08 07:32
40. Kandellaster (kandellaster) 03.02.08 07:32