Показать полную графическую версию : Есть ли способ запретить выключение компа при наличии компакт-диска в дисководе?
В сообщении http://forum.oszone.net/post-849556-167.html дана ссылка на программу выдвигания лотков дисководов EjectAllCDDVD.
А меня интересует, можно ли как-то принудить домашних не оставлять диски в дисководах?
Вот если бы можно было задать как-то автозапуск такой или подобной программы после нажатия кнопки "Выключение компьютера", и чтобы комп не выключался, пока лотки не закроются, и при этом лотки не закрывались бы при наличии дисков...
Возможно, я зафантазировался, но вдруг найдутся хотя бы другие рецепты...
D_Master
05-09-2008, 06:14
truvo, по идее, если твикнуть шутдаун на подгрузку доп. библиотеки или программы, которая будет проверять диски перед выключением, то тогда конечно можно. Только я не совсем представляю как это сделать. В теме "Защита своего дистрибутива" (http://forum.oszone.net/thread-71645-18.html) есть примерно такой же способ для подключения библиотечки к winntbbu.dll для ввода пароля при установке.
Ну или не библиотеку, а тупо батник:
cls
@echo off
for %%i in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do if exist %%i:\autorun.inf set CDROM=%%i:
if defined %CDROM% (
if exist %CDROM%\*.* (
goto error
)
else (
goto ok
)
)
:error
echo Attention! Before computer will turn off it is necessary to take out disks from a CD drive!
rem запускаем прогу для автоматического извлечения лотка привода.
start /wait cdeject.exe
echo.
echo Please close the disk drive and press any button to shutdown computer.
pause>null
start shutdown.exe -s -t 10 -c "Computer will turn off in 10 seconds"
:ok
start shutdown.exe -s -t 10 -c "Computer will turn off in 10 seconds"
exit
Что-то типа такого.
А ещё можно удалить кнопки логаута и выключения из пуска через XP Tweaker например и вывести на раб.стол ярлыки на этот файл, который и будет всё проверять. Неудобно немного, но зато проверка будет и файло патчить не надо :wink:
Я только не додумался как сделать проверку не autorun.inf, а вообще любого файла в диске. Интересно так проканает?
for %%i in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do if exist %%i:\*.* set CDROM=%%i:
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.