Войти

Показать полную графическую версию : [решено] Выполнение действий при подключении/отключении флешки


Iruta-san
03-06-2010, 14:06
Добрый день! Задача такая: при подключении определенной флешки должно происходить подключение сетевого диска. Это я умею, это понятно. А вот как сделать так, чтобы скрипт висел в памяти до тех пор, пока флешка подключена, а после ее отключения - отрубал сетевой диск(и, возможно, выгружался из памяти)?

Другими словами: как можно с помощью скрипта идентифицировать флешку, а затем периодически проверять, подключена ли она еще?

zonderz
03-06-2010, 15:04
как можно с помощью скрипта идентифицировать флешку »

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

и, возможно, выгружался из памяти »
легко
Exit.

Iruta-san
18-06-2010, 17:41
Надо теперь разрешить следующее:
Решил делать проверку в скрипте на наличие самого себя. Примерно так:


:checkAgain
SET checkfile="\Почта.exe"
IF NOT EXIST %checkfile% (goto notExist) ELSE @echo ok!

::пауза 30 сек
ping -n 1 -w 3000 192.0.0.254 > nul
goto checkAgain

:notExist
@echo Выдернули!
pause

но когда флешку выдергиваю, при очередной проверке скрипт просто самоуничтожается и, судя по всему, перед этим нифига не делает...
Как поправить?


ЗЫ: поправочка, пока что оно проверяет не само себя, но валяется там же, в корне.

Iruta-san
21-06-2010, 15:58
Проблему решил обходным путем. Поскольку скрипт все равно предполагается использовать в виде скомпиленного в ехе-шник, то именно в этом виде я и решил его проверить. Все прошло так, как и должно, исполняемый файл целиком загрузился в память и оттуда работает даже после извлечения флешки.
Буду писать скрипт дальше.

Тем не менее, буду благодарен, если тыкнете меня носом в топики, где описаны другие возможности определения флешки.


ЗЫ: инфа для нубов вроде меня: компилировал программой Bat to Exe Converter от Faith Kodak




© OSzone.net 2001-2012