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

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

Закрытие консольного приложения


Andrey ©   (2001-06-20 16:01:00) 

Как отследить "Ctl+C", "Ctl+Break" и нажатие крестика в консольном приложении?


VRussian   (2001-09-30 12:04:00) [1]

Вешаем глобальный хук и никаких проблемм!
Правдо работать будет криво, но мы это переживём...

We are to make the World better ...


Ketmar   (2001-09-29 20:08:00) [2]

потому что документацию читаем криво. где stdcall после объявления хандлера, а? винда, бедная, про дельфийский способ вызова функций с аргументами в регистрах не знает.
кнопочка же "закрыть" будет поймана только в NT/2K. 9x смело игнорируют всякие хандлеры при ее нажатии.

Satanas Nobiscum! 29-Sep-XXXVI A.S.


Ketmar   (2001-09-29 20:07:00) [3]

потому что документацию читаем криво. где stdcall после объявления хандлера, а? винда, бедная, про дельфийский способ вызова функций с аргументами в регистрах не знает.

Satanas Nobiscum! 29-Sep-XXXVI A.S.


Vitaly   (2001-09-28 09:39:00) [4]

Вот программуля (почитав SDK).
По Сtrl+С, Ctrl+Break handlerr вызывается,
причем сt = 3221328808 (никак не CTRL_C_EVENT или CTRL_BREAK_EVENT).
Нажатие крестика handlerr игнорируется.
Почему?

function handlerr(ct: DWORD): boolean;
begin
handlerr := true;
end;

begin
SetConsoleCtrlHandler(@handlerr, true);
readln;
end.


SergeG   (2001-06-20 18:21:00) [5]

SetConsoleCtrlHandler и т. д., читай SDK


Наверх

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