|
|
|
Как выполнить функцию при закрытии приложения на С++
|
|||
|---|---|---|---|
|
#18+
Есть проект в VS2010 на С++ Простое консольное приложение Как можно назначить какую нить функцию на тот случай когда я сам закрываю это приложение крестиком в углу консольного окна ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2013, 17:10:51 |
|
||
|
Как выполнить функцию при закрытии приложения на С++
|
|||
|---|---|---|---|
|
#18+
SetConsoleCtrlHandler() Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2013, 17:17:43 |
|
||
|
Как выполнить функцию при закрытии приложения на С++
|
|||
|---|---|---|---|
|
#18+
tromПростое консольное приложение Как можно назначить какую нить функцию на тот случай когда я сам закрываю это приложение крестиком в углу консольного окна ? Как бы консольное приложение не подразумевает вообще такую возможность. Я к тому, что решение Дмитрия непереносимо. Есть ещё atexit() http://www.cplusplus.com/reference/cstdlib/atexit/ но он может запросто в этом случае не вызываться (можно проверить). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2013, 17:49:26 |
|
||
|
Как выполнить функцию при закрытии приложения на С++
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, А можно пример использования для мой ситуации, что то не могу найти нормальный пример в гугл для SetConsoleCtrlHandler() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2013, 17:58:32 |
|
||
|
Как выполнить функцию при закрытии приложения на С++
|
|||
|---|---|---|---|
|
#18+
tromчто то не могу найти нормальный пример в гугл для SetConsoleCtrlHandler() http://msdn.microsoft.com/en-us/library/windows/desktop/ms685049(v=vs.85).aspx Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2013, 18:50:27 |
|
||
|
Как выполнить функцию при закрытии приложения на С++
|
|||
|---|---|---|---|
|
#18+
MasterZiv , atexit() Вроде работает, но я вызвал всплывающее окно MessageBoxA() при закрытии консоли, но через несколько секунд консоль и всплывающее окно закрываются не дождавшись пока я нажму ОК Я к тому что atexit() может не дождаться выполнения функции которую я буду вызвать при завершении ? у atexit() какой то лимит по времени ? И еще если консоль зависнет и я завершу работу аварийно или вообще через диспетчер задач убью процесс, эта функция будет вызываться ? Dimitry Sibiryakov Как я понял идет какое то перечисление возможных событий и выполнение определенных функций для них, а где почитать что значат каждое событие ? И вопрос если консоль закрывается аварийно или через диспетчер задач есть ли какое то событие которое может обработать эту ситуацию ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2013, 20:59:49 |
|
||
|
Как выполнить функцию при закрытии приложения на С++
|
|||
|---|---|---|---|
|
#18+
tromMasterZiv , atexit() Вроде работает, но я вызвал всплывающее окно MessageBoxA() при закрытии консоли, но через несколько секунд консоль и всплывающее окно закрываются не дождавшись пока я нажму ОК Я к тому что atexit() может не дождаться выполнения функции которую я буду вызвать при завершении ? у atexit() какой то лимит по времени ? И еще если консоль зависнет и я завершу работу аварийно или вообще через диспетчер задач убью процесс, эта функция будет вызываться ? Dimitry Sibiryakov Как я понял идет какое то перечисление возможных событий и выполнение определенных функций для них, а где почитать что значат каждое событие ? И вопрос если консоль закрывается аварийно или через диспетчер задач есть ли какое то событие которое может обработать эту ситуацию ? MessageBoxA() - неблокирующая/асинхронная функция? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2013, 21:22:28 |
|
||
|
Как выполнить функцию при закрытии приложения на С++
|
|||
|---|---|---|---|
|
#18+
tromа где почитать что значат каждое событие ? Ты что, самостоятельно ходить по ссылкам совсем не умеешь?.. http://msdn.microsoft.com/en-us/library/windows/desktop/ms683242(v=vs.85).aspx Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.12.2013, 21:29:39 |
|
||
|
Как выполнить функцию при закрытии приложения на С++
|
|||
|---|---|---|---|
|
#18+
tromИ вопрос если консоль закрывается аварийно или через диспетчер задач есть ли какое то событие которое может обработать эту ситуацию ? это конец, подумал Штирлиц, где же пистолет. kill -9/terminateprocess не дают никаких шансов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2013, 01:06:49 |
|
||
|
Как выполнить функцию при закрытии приложения на С++
|
|||
|---|---|---|---|
|
#18+
tromИ еще если консоль зависнет и я завершу работу аварийно или вообще через диспетчер задач убью процесс, эта функция будет вызываться ? И при отключении электропитания - тоже будет вызываться! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2013, 03:59:56 |
|
||
|
Как выполнить функцию при закрытии приложения на С++
|
|||
|---|---|---|---|
|
#18+
alex_ktromИ еще если консоль зависнет и я завершу работу аварийно или вообще через диспетчер задач убью процесс, эта функция будет вызываться ? И при отключении электропитания - тоже будет вызываться! это конечно же сарказм, шутка. гарантий нет. ни в c, ни в каком то другом языке программирования. Её вообще по жизни нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2013, 09:24:40 |
|
||
|
Как выполнить функцию при закрытии приложения на С++
|
|||
|---|---|---|---|
|
#18+
Около 17 лет назад я в своём блоге писал о неубиваемой программе. Правда, не консольной, а оконной. Это было под новую крутую операционку Win 95. Также портировано под OS/2. Фишка в том, что система не делает сразу kill, а перед убийством программы вежливо посылает WM_QUIT. Тут моя программа создаёт дубликат процесса с общими страницами данных, а сама завершается. Перехват завершения программы работал надёжно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2013, 04:04:25 |
|
||
|
|

start [/forum/search_topic.php?author=Anonymous+007&author_mode=last_posts&do_search=1]: |
0ms |
get settings: |
7ms |
get forum list: |
12ms |
get settings: |
5ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
194ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
29ms |
get tp. blocked users: |
1ms |
| others: | 705ms |
| total: | 973ms |

| 0 / 0 |
