On-line: Andrey, гостей 0. Всего: 1 [подробнее..]
АвторСообщение



Пост N: 508
Зарегистрирован: 17.06.10
ссылка на сообщение  Отправлено: 28.05.17 12:08. Заголовок: Уровень закрытия программы


В MSDN написано, что через SetProcessShutdownParameters можно установить уровень опроса списка процессов при закрытии их системой (ну там Диспетчер задач - 1, Explorer - 2)

Можно ли процессам своих задач назначать уровни до FF ?
Как получить текущий уровень закрытия своего процесса ?

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 9 [только новые]


постоянный участник


Пост N: 1480
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 28.05.17 17:39. Заголовок: fil пишет: Можно ли..


fil пишет:

 цитата:
Можно ли процессам своих задач назначать уровни до FF ?
Как получить текущий уровень закрытия своего процесса ?


1) Можно, с учетом примечания (Remarks);
2) GetProcessShutdownParameters


Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 509
Зарегистрирован: 17.06.10
ссылка на сообщение  Отправлено: 28.05.17 18:14. Заголовок: 1. Что значит с учет..


1. Что значит
 цитата:
с учетом примечания (Remarks)


Номер приоритета должен быть уникальным или нет ?

2. Типа так - GetProcessShutdownParameters (@p1, @P2) ?


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 1311
Зарегистрирован: 27.01.07
ссылка на сообщение  Отправлено: 28.05.17 18:17. Заголовок: fil пишет: 1. Что з..


fil пишет:

 цитата:
1. Что значит
 цитата:
с учетом примечания (Remarks)



Remarks
Applications running in the system security context do not get shut down by the operating system. They get notified of shutdown or logoff through the callback function installable via SetConsoleCtrlHandler. They also get notified in the order specified by the dwLevel parameter.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 1481
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 28.05.17 19:38. Заголовок: fil пишет: Номер пр..


fil пишет:

 цитата:
Номер приоритета должен быть уникальным или нет ?


Поскольку msdn об этом ничего не говорит, то скорее всего нет. Но не видя исходники функции, можно лишь догадываться, что там произойдет и как будут учитываться пожелания быть первым или последним.

PSP пишет:

 цитата:
Remarks
Applications running in the system security context do not get shut down by the operating system. They get notified of shutdown or logoff through the callback function installable via SetConsoleCtrlHandler. They also get notified in the order specified by the dwLevel parameter.


Ага.

fil пишет:

 цитата:
2. Типа так - GetProcessShutdownParameters (@p1, @P2) ?


В теории так, опять же не видя реализации функции-переходника GetProcessShutdownParameters, что-то утверждать - неблагодарное занятие.


Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 510
Зарегистрирован: 17.06.10
ссылка на сообщение  Отправлено: 28.05.17 23:12. Заголовок: Петр, PSP благодарю..


Петр, PSP благодарю. Будем посмотреть

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 511
Зарегистрирован: 17.06.10
ссылка на сообщение  Отправлено: 29.05.17 14:35. Заголовок: Выяснилась любопытна..


Выяснилась любопытная штука - ежели сделать в своей проге SetConsoleCtrlHandler(1,1), то при перезагрузке компа (прога открыта) кнопки с предложением о Принудительном закытии оной не появляется. Однако ежели эта прога живет в трее, предложением о Принудительном закытии обязательно появится. В инете ничего похожего не нашел

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 1486
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 29.05.17 15:23. Заголовок: fil пишет: SetConso..


fil пишет:

 цитата:
SetConsoleCtrlHandler


Эту функцию мы используем для консольных программ, для GUI - нужно обрабатывать WM_QUERYENDSESSION / WM_ENDSESSION.

Там (в описании WM_QUERYENDSESSION) и ищите ответы на свои вопросы (опять Remarks читать придется ).


Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 512
Зарегистрирован: 17.06.10
ссылка на сообщение  Отправлено: 29.05.17 16:18. Заголовок: Извиняюсь, конечно ж..


Извиняюсь, конечно же SetProcessShutdownParameters, а не SetConsoleCtrlHandler. Это я описался. С первой попытки перезагрузки компа закрывается Tray, а со второй попытки уже без вопросов комп перезагпужается. Видимо все-рвно придется WM_QUERYENDSESSION / WM_ENDSESSION обрабатывать. А как поймать это сообщение - типа листнера что-то писать

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 1487
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 29.05.17 17:03. Заголовок: fil пишет: как пойм..


fil пишет:

 цитата:
как поймать это сообщение - типа листнера что-то писать



Что-то в этом роде,
В FW не знаю, а в MiniGUI set events func to рулит.



Спасибо: 0 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 135
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет