Войти

Показать полную графическую версию : Скрипт для безопасного извлечения флешки


Страниц : [1] 2

11943499
08-08-2009, 10:28
Доброе время суток всем ! :)
Вот вопрос по теме, давайте делиться как реализовать.
Можно использовать штатные средства Windows, тогда как ? Или встроенные возможности доступа к железу.
В любом случае было бы интересно найти способ агрессивного извлечения флешки даже в том случае, если с нее запущены программы.

amel27
08-08-2009, 11:59
способ агрессивного извлечения флешки »гм... удаленно что-ли?.. например, привязать к CD приводу - чтобы при выезде лотка выдергивалась флешка... хотя, пожалуй, у привода сил не хватит... тогда можно использовать блок (http://ru.wikipedia.org/wiki/%D0%91%D0%BB%D0%BE%D0%BA_(%D0%BC%D0%B5%D1%85%D0%B0%D0%BD%D0%B8%D0%BA%D0%B0)), при этом силу можно увеличить раз в 10 (соотношение длины USB-разъема и диаметра CD), т.е. в итоге мы должны получить что-то типа полипласта (http://ru.wikipedia.org/wiki/%D0%9F%D0%BE%D0%BB%D0%B8%D1%81%D0%BF%D0%B0%D1%81%D1%82)

Можно использовать штатные средства Windows, тогда как ? Или встроенные возможности доступа к железу.»что имеется ввиду?.. обрубить открытые файлы?.. или автоматизировать операцию "безопасного извлечения"..

11943499
08-08-2009, 17:13
например, привязать к CD приводу - чтобы при выезде лотка выдергивалась флешка » :yes:

что имеется ввиду?.. обрубить открытые файлы?.. или автоматизировать операцию "безопасного извлечения".. »
и обрубить и извлечь.....эээээ...фигурально, не физически...

FlatX007
08-08-2009, 19:29
Ну не изобретая за ново велосипед .... можно.

Есть утилита DevEject

Утилита работает в командной строке через команду:
DevEject.exe -EjectDrive:X: (X-буква присоединенной флешки)
Например: DevEject.exe -EjectDrive:H:

Остаётся только ... а ничего не остаётся просто пользоватся ей. =)

Nik_rus
08-08-2009, 20:00
Мне сначала тоже пришло в голову привязать веревочкой к CD-ROM :)
На самом деле можно стандартными средствами винды - Пуск-Выполнить-compmgmt.msc
Но вот параметров я не знаю (чтобы все автоматом сдеалть), хотя на то нам автоит и дан ...

11943499
08-08-2009, 20:03
Не работает эта утилитка в среде X64, да и неудобно это, тулить в скрипт чуждый модуль.
Хочется не велосипед, а вездеход )

Nik_rus
08-08-2009, 20:19
compmgmt.msc + msdnтворят чудеса с человечискими мозгами.
так что велком. :)

11943499
08-08-2009, 20:37
compmgmt.msc + msdnтворят чудеса с человечискими мозгами. »
Ну и о чем это ?
Кто-нибудь считал шапку темы ? :closed-to

Nik_rus
08-08-2009, 21:12
Я про то что ты можешь взять эту стандартную в винде утилу на вооружение (там есть пункт "Съемные ЗУ") а на онлайн спарвке мелкомягких можно узнать параметры ком-строки aka compmgmt.msc /s zy /a snyat' и проч., но я их не знаю, да и зачем они, если в руках автоит - им можно все сделать.

Какие все непонятки :dont-know

11943499
09-08-2009, 08:43
если в руках автоит - им можно все сделать. »

Хммм..... Задавая свой вопрос на форуме по Autoit, какие иные способы я мог бы подразумевать...?
Итак, как можно реализовать безопасное программное извлечение флешки с помощью autoit ?

Nik_rus
09-08-2009, 12:01
Ну собсно попробовав той утилой отрубить флешку - она действительно вырубается, но драйв остается...
Отследил я там, что при запуске "Безпасного извлечения" запускается rundll32.exe, надо только нужную длл найти...

amel27
09-08-2009, 13:41
как можно реализовать безопасное программное извлечение флешки с помощью autoit ? »на форуме оффсайта искал?.. Safely Eject a USB Drive (http://www.autoitscript.com/forum/index.php?showtopic=83470)

11943499
09-08-2009, 18:37
на форуме оффсайта искал? »
Читал, там тоже дело затихло на стадии неудачного эксперимента.

amel27
10-08-2009, 04:09
11943499, у меня работает, статистика есть?

Yashied
11-08-2009, 01:32
http://www.autoitscript.com/forum/index.php?showtopic=99408

Belfigor
11-08-2009, 21:11
А тупо отключить USB порт на определенное время и потом включить его можно? :)

amel27
12-08-2009, 11:54
тупо отключить USB порт »безопасным такое "извлечение" сложно назвать :)

SyDr
12-08-2009, 16:17
http://technet.microsoft.com/ru-ru/sysinternals/bb897438.aspx

Автор: Марк Руссинович (Mark Russinovich)
Опубликовано 1 ноября 2006 г.
Введение
В ОС UNIX имеется стандартная служебная программа под названием Sync, которая позволяет сбросить все данные файловой системы из памяти на диск, чтобы они не были потеряны, если произойдет сбой системы. Без выполнения этой операции все присутствующие в кэше данные утрачиваются при сбое. Я написал аналогичную программу, также названную Sync, которая работает во всех версиях Windows. Обращайтесь к ней, если вам потребуется организовать надежное хранение на жестких дисках измененных данных файловой системы. К сожалению, для запуска Sync нужны административные привилегии. В данной версии, помимо прочего, реализована возможность сброса из памяти данных, относящихся к съемным носителям (например, к ZIP-дисководам).

Синтаксис: sync [-r] [-e] [список букв дисков]

-r Сброс съемных носителей.
-e Извлечение съемных носителей.

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

Belfigor
12-08-2009, 16:20
amel27, нет, это не ради извлечения, это чтобы просто отключить работу например клавиатуры на определенное время, ей от этого хуже не станет :)
Дак можно или нет? :)
Ну или любым другим способом заблокировать пользователю возможность исользования маши или клавиатуры до тех пор пока скрипт не сочтет нужным разрешить пользователю снова ими пользоваться?

amel27
12-08-2009, 16:33
любым другим способом заблокировать пользователю возможность исользования маши или клавиатуры до тех пор пока скрипт не сочтет нужным разрешить пользователю снова ими пользоваться »поиск по форуму, ключевое слово: "SetWindowsHookEx" ;)




© OSzone.net 2001-2012