Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Отловить выключение компьютера [XP, 2003]


Страницы:   1 2

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]

Все написано выше, все что ты хочешь сделать мартышкин труд и диверсия.


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо