|
TApplication завершение работы
|
|||
---|---|---|---|
#18+
Zelius, да, я это уже понял. По вызову Terminate код, идущий после Application.Run, отрабатывает. Мне почему-то казалось, что закрытие окна крестиком - это не аварийный выход. Буду искать, как написать обработчик Ctrl+С - это все равно нужно. Спасибо, я понял, в какую сторону нужно копать дальше ... |
|||
:
Нравится:
Не нравится:
|
|||
03.03.2022, 11:51 |
|
TApplication завершение работы
|
|||
---|---|---|---|
#18+
S_Gur, SetConsoleCtrlHandler кажется ... |
|||
:
Нравится:
Не нравится:
|
|||
03.03.2022, 12:06 |
|
TApplication завершение работы
|
|||
---|---|---|---|
#18+
Zelius, да, нашел уже, все равно - большое спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
03.03.2022, 12:18 |
|
TApplication завершение работы
|
|||
---|---|---|---|
#18+
wadman"Done" напишет при завершении? Если приложение не консольное - не напишет по определению ибо некуда. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
03.03.2022, 12:46 |
|
TApplication завершение работы
|
|||
---|---|---|---|
#18+
Zelius, скажи, пожалуйста, а я могу при перехвате Ctrl+C как-то указать, что ситуация штатная, а не аварийная? Потому как если я выполняю Application.Terminate при обработке HTTP-запроса, программа завершается штатно и правильно. А когда я делаю то же самое при обработке Ctrl+C, то я свои необходимые действия выполнить могу, но по факту программа все равно закрывается аварийно. Можно ли как-то сбросить признак аварийного выключения? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.03.2022, 13:02 |
|
TApplication завершение работы
|
|||
---|---|---|---|
#18+
S_Gur, ты же возвращаешь правильно Result в обработчике? код в студию ... |
|||
:
Нравится:
Не нравится:
|
|||
03.03.2022, 13:08 |
|
TApplication завершение работы
|
|||
---|---|---|---|
#18+
Zelius, Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29.
... |
|||
:
Нравится:
Не нравится:
|
|||
03.03.2022, 13:15 |
|
TApplication завершение работы
|
|||
---|---|---|---|
#18+
S_Gur, должно работать. попробуй всегда True возвращать, попробуй логировать что за CtrlType приходит, посмотри как на Ctrl+C реагирует... Ну и классика - SetConsoleCtrlHandler что возвращает? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.03.2022, 13:21 |
|
TApplication завершение работы
|
|||
---|---|---|---|
#18+
Zelius, SetConsoleCtrlHandler возвращает True, события перехватываются, на нажатие крестика получаю 2, на Ctrl+C - 0, все в соответствии с константами, там все правильно, перехват выполняется корректно. В общем-то, это уже неважно, я выкрутился несколько иначе: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49.
Теперь все, что мне нужно, очень корректно обрабатывается в процедурах InitHTTP и DoneHTTP. Моя проблема решена, всем большое спасибо за помощь ... |
|||
:
Нравится:
Не нравится:
|
|||
03.03.2022, 13:57 |
|
|
start [/forum/topic.php?fid=58&msg=40137329&tid=2036595]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
34ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
others: | 261ms |
total: | 382ms |
0 / 0 |