![]() |
Сабж.
kill не пойдет потому что уже использован, reboot понятно почему. В списке сервис все равно есть и после kill, и в том же состоянии, что делать подскажите? Добавлено: Вдогон: как определить кто занял конкретный файл, убить его и освободить этот файл? главное -- без ребута |
to Osya
Сервис stopped - он остановлен, выгружен из памяти и т.д. Бывают сервисы/драйвера, которые так криво написаны, что не могут нормально выгрузиться. У меня дома пара таких штук есть. Добавлено: to Osya Есть такая программа Procexp или SysInternals Proccess Explorer. Позволяет просматривать дескрипторы, а соответственно ресурсы каждой программы. С помощью этой проги можно убить некоторые "неубиваемые" процессы :gigi: |
"stopping" != "stopped"
Добавлено: "service"!="process" |
to Osya
Т.е он "стоппится" и зависает. ProcExp годится и для сервисов. |
после смерти (kill) процесса соответствующего сервису его ничем таким не поймать, однако, как я понимаю это не все что к сервису относится и он продолжает виснуть...
|
Osya
Некоторые службы так созданы, что несколько служб живут в одном процессе. В этом случае kill вообще не подойдет. Ну и ясно, что kill для сервера БД, например, это не решение. Может просто оно долго останавливается? В общем случае - корректно перевести службу из состояния Stopping в Stopped извне невозможно, это состояние - то, что возвращает сама служба, и reboot - тоже некорректная операция в общем случае, система просто ждет некоторое время, а потом ей уже безразлично, остановилась служба или нет. |
to Osya
vasketsov прав. Служба сама возвращает свое состояние. Что хочет, то и делает. |
to Osya
Цитата:
Примеры (сервис как процесс): 1. Norton Antivirus 2. Norton SpeedDisk(nopdb.exe) 3. MsiInstaller(msiexec.exe) и многие другие. |
Время: 19:43. |
Время: 19:43.
© OSzone.net 2001-