![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Отловить выключение компьютера [XP, 2003]
Steep © (2007-12-12 12:49:00)Как отловить выключение компььютера и не дать ему выключится - если например на форме кликнута галочка?
Steep (2007-12-13 07:49:00) [1]
> А компютер сам по себе выключается?Может лучше юзера выпороть
> для профилактики?
Ну все эти методы понятны
> В частном случае - да.Прикладные задачи вольны вызвать функцию
> ExitWindows()Тебя именно эти вызовы интересуют ?
так значит нужно отловить эту команду - и не дать другим ее поймать?
А не в частном?
oldman (2007-12-12 16:36:00) [2]
> Steep © (12.12.07 12:49)
> Как отловить выключение компььютера и не дать ему выключится
А компютер сам по себе выключается?
Может лучше юзера выпороть для профилактики?
Сергей М. (2007-12-12 16:30:00) [3]
> ля завершения работы наверняка же вызывают какуюто команду
В частном случае - да.
Прикладные задачи вольны вызвать функцию ExitWindows()
Тебя именно эти вызовы интересуют ?
Steep (2007-12-12 15:56:00) [4]
> WM_QUERYENDSESSION предназначено для того, чтобы дать твоему
> приложению "последний шанс".А вовсе не для управления временем
> жизни системы и других приложений.
хм..
ну для завершения работы наверняка же вызывают какуюто команду - ведь можно ее отловить и дать ей свершиться?
Anatoly Podgoretsky (2007-12-12 15:39:00) [5]> Steep (12.12.2007 15:25:29) [29]
Сравни
разобрано
разработано
DiamondShark (2007-12-12 15:33:00) [6]
> ведь не раз может пригодится
Так оно не для того предназначено.
WM_QUERYENDSESSION предназначено для того, чтобы дать твоему приложению "последний шанс".
А вовсе не для управления временем жизни системы и других приложений.
Steep (2007-12-12 15:25:00) [7]
> > разработаноГде ты нашел такое слово в моем сообщение,
> видишь справа кнопочку <Цитата> пользуйся ее.
здесь
>[21]
> все давно уже разобрано.
> то это регулируется настройками системных локальных и групповых
> политик безопасности, а не изобретением прикладных велосипедов.
>
Ну конечно можно - но я хочу для тренировки мозгов- ведь не раз может пригодится
Anatoly Podgoretsky (2007-12-12 15:17:00) [8]
> Так что с двойным сожалением следует констатировать необходимость
> пересмотра ТЗ.
Это да, иначе администратор пересмотрит свое одношение к этому чуду.
Сергей М. (2007-12-12 15:16:00) [9]
> Steep © (12.12.07 15:13) [24]
Если
> Это для безопасности сервера
то это регулируется настройками системныхлокальных и групповых политик безопасности, а не изобретением прикладных велосипедов.
DiamondShark (2007-12-12 15:16:00) [10]
> Steep © (12.12.07 15:13) [24]
>
> > А тебе до них есть дело ?
>
> к сожалению есть...
К сожаленью, очерёдность, в которой приложения получат WM_QUERYENDSESSION, не известен даже билгейцу.
Так что с двойным сожалением следует констатировать необходимость пересмотра ТЗ.
Anatoly Podgoretsky (2007-12-12 15:16:00) [11]
> разработано
Где ты нашел такое слово в моем сообщение, видишь справа кнопочку <Цитата> пользуйся ее.
Steep (2007-12-12 15:13:00) [12]
> А тебе до них есть дело ?
к сожалению есть...
Сергей М. (2007-12-12 15:04:00) [13]
> так закрывается много приложении прежде чем доходит до текущей
> проги
А тебе до них есть дело ?
Вопрос твой стоял конкретно - как обнаружить стартовавший просесс "выключения".
Steep (2007-12-12 14:53:00) [14]
> Сергей М. ©
Я так делал - но так закрывается много приложении прежде чем доходит до текущей проги...
Решил исправить...
> Anatoly Podgoretsky ©
Где разработано? - я наверняка плохо искал - но я не нашел..
Anatoly Podgoretsky (2007-12-12 14:17:00) [15]> Steep (12.12.2007 13:53:17) [17]
Так ты не первый, кто с такой дикой идеей приходит сюда.
Нам даже мозг не надо морщить, все давно уже разобрано.
Сергей М. (2007-12-12 14:09:00) [16]Зачем тебе все это ?
Обрабатывай событие OnCloseQuery главной формы приложения.
Если в этот момент команда закругляться по ряду причин не может быть исполнена твоим приложением, возвращай CanClose = False
Всех делов.
Steep (2007-12-12 14:02:00) [17]
> Сергей М. ©
а где можно побдробнее об этом почитать - желательно на русском?
Сергей М. (2007-12-12 13:55:00) [18]
> Steep © (12.12.07 13:36) [12]
> WM_QUERYENDSESSION
> но вот мессагу не выдает
И не выдаст.
Сообщение, если оно имело место быть, уже выбрано и обработано объектом Application.
Steep (2007-12-12 13:53:00) [19]почему это сразу воспринимается как плохо - мне нужно для себя.
тогда давайте вместо кнопки выключения всегда дергать за шнур из разетки а получать права доступа паяльником.....
Anatoly Podgoretsky (2007-12-12 13:47:00) [20]> Steep (12.12.2007 13:45:15) [15]
Все написано выше, все что ты хочешь сделать мартышкин труд и диверсия.