Re[4]: Когда же винда научится извлекать устройства?
От: Nuzhny Россия https://github.com/Nuzhny007
Дата: 10.01.24 14:57
Оценка:
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>ОС не может решать, какие сервисы полезные, а какие нет.


Не может или не хочет? Вполне можно заложить в логику извлечения устройства приостановку работы служб, которые мешают. Почему нет? Сделать список служб, которые ни в каком случае нельзя приостанавливать, а остальным отсылать соответствующее сообщение.

>>Или должна сама предлагать их отключить в случае проблем.

PD>Хм. Ты предлагаешь, чтобы обычному пользователю ОС предлагала — а не отключить ли Вам "Брокер системных событий" ? Или "Клиент групповой политики" ?

Нет, я предлагаю сделать механизм прерывания работы этих служб. Даже интерфейс, а не механизм — он есть готовый, вплоть до того, перезапускать ли службу после сбоев, сколько раз пробовать это делать и с какими таймаутами. Тут нет никакого риска.

PD>Нет уж. Нужно ему — пусть идет в "Сервисы" и там отключает, беря тем самым ответственность на себя.

PD>А то как бы после отключения пары-тройки сервисов не пришлось бы Windows переустанавливать...

Так пользователю же не сообщается какая служба мешает. В том-то и проблема. Так-то службу можно и через диспетчер задач приостановить, интерфейс есть.

PD>Прерваться совсем — это есть, net stop, но при этом он не прервется, а закончит работу, и можно его будет разве что заново запустить net start.

PD>Вот только это лишь просьба — SERVICE_CONTROL_STOP. Он может не прерваться. Аналогично тому, как нажатие на крестик в верхнем правом углу окна означает лишь посылку WM_CLOSE, а закроется ли окно — зависит от того, что сделает обработчик.

А как же SERVICE_CONTROL_PAUSE?
https://learn.microsoft.com/en-us/windows/win32/api/winsvc/nf-winsvc-controlserviceexa
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.