Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 5.00
Romadzao
7 / 7 / 1
Регистрация: 02.07.2012
Сообщений: 120
#1

Сохранение данных при выключении - C++

07.07.2012, 02:16. Просмотров 1113. Ответов 12
Метки нет (Все метки)

Вопрос, пожалуй, не для новичков, но здесь народу много. Итак, как при выключении компьютера заставить программу выходить из цикла и сохранять переменную в файл.тхт? Сохранять данные в файл я умею, из цикла можно выходить с помощью kbhit() но здесь это не поможет, таки как заставить программу реагировать на выключение и действовать раньше, чем её процесс кинется грудью на амбразуру безжалостного шиндовского уничтожителя процессов?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.07.2012, 02:16
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Сохранение данных при выключении (C++):

Выполнение программы при выключении компьютера - C++
День добрый! Возникла такая задачка, пишу программу и необходимо чтобы она запускалась при включении компьютера, сделала что нужно,...

С++ Сохранение данных при сбое системы, класс BackUp, temp файл - C++
Дорогие программисты, помогите, пожалуйста, советом со следующей задачей (хотя бы направьте в нужное русло или что почитать...

Сохранение данных в файле - C++
Помогите написать программу чтобы введенная информация сохранялась в файле(.txt) Вот основа: #include <iostream> #include...

Сохранение данных хэш таблицы - C++
Здравствуйте. Имеется хеш таблица с размером массива 10 000. В таблицу периодически заносятся данные. Как сохранять данные при выходе из...

Ввод и сохранение данных вектора - C++
эсть програма но нужно добавить несколько функцый помогите кому не сложно #include "stdafx.h" #include <iostream> #include...

Сохранение и загрузка данных в файл - C++
Добрый вечер всем. Столкнулся с какой-то элементарной проблемой, и не могу никак понять в чем траблы. Вот код: ... int main() ...

12
Avazart
Эксперт С++
7237 / 5433 / 304
Регистрация: 10.12.2010
Сообщений: 24,152
Записей в блоге: 17
07.07.2012, 02:40 #2
Цикл в поток.Останавливать поток при закритии окна програмы и там же сохранять результат.
Ну там кажеться еще сообщение WinApi есть которое генерится при выключении компа его можно отслеживать.
0
Romadzao
7 / 7 / 1
Регистрация: 02.07.2012
Сообщений: 120
07.07.2012, 02:46  [ТС] #3
За этими словами, возможно, кроется истина, но не мог бы ты объяснить это немного понятнее, с небольшим примером, пожалуйста! И чем репутация от благодарностей отличается?
0
Avazart
Эксперт С++
7237 / 5433 / 304
Регистрация: 10.12.2010
Сообщений: 24,152
Записей в блоге: 17
07.07.2012, 02:48 #4
Какая у тебя среда разработки и тип приложения?

И почему сразу все не сохранять в файл?
0
Romadzao
7 / 7 / 1
Регистрация: 02.07.2012
Сообщений: 120
07.07.2012, 02:54  [ТС] #5
среда разработки - визуальная студия 2010, консольный тип.
И почему сразу все не сохранять в файл?
Я хочу, чтоб программа сама включалась и выключалась, чтоб написал - и забыл, а она когда надо будет - сообщит.
0
Avazart
Эксперт С++
7237 / 5433 / 304
Регистрация: 10.12.2010
Сообщений: 24,152
Записей в блоге: 17
07.07.2012, 02:57 #6
И почему сразу все не сохранять в файл?
Ну а в чем проблема? Пусть прога просто после очередной итерации цика дописывает в файл новые данные.
0
Romadzao
7 / 7 / 1
Регистрация: 02.07.2012
Сообщений: 120
07.07.2012, 03:03  [ТС] #7
Ну а в чем проблема? Пусть прога просто после очередной итерации цика дописывает в файл новые данные.
Я хочу, чтобы скорость цикла была максимальной, т.е на счету каждый импульс процессора.
Цикл в поток.Останавливать поток при закритии окна програмы и там же сохранять результат.
Ну там кажеться еще сообщение WinApi есть которое генерится при выключении компа его можно отслеживать.
Раз ты так умно выражаешься, значит знаешь, о чём говоришь и можешь помочь. Если объяснять слишком долго - дай хотя-бы ссылку по теме.
0
Avazart
Эксперт С++
7237 / 5433 / 304
Регистрация: 10.12.2010
Сообщений: 24,152
Записей в блоге: 17
07.07.2012, 03:09 #8
Тут надо пробывать.
Если не знаишь что такое поток, то придется прочитать...- информации много.
Также стоит почитать по отлову сообщений в WinApi и найти это самое сообщение о завершении работы.
0
Romadzao
7 / 7 / 1
Регистрация: 02.07.2012
Сообщений: 120
07.07.2012, 03:16  [ТС] #9
Поток - такая магистраль, по которой ездят туда сюда обратно разные сообщения с длинными названиями, которые отлавливает специальный цикл по названию и решает, что делать дальше.
Ну там кажеться еще сообщение WinApi есть которое генерится при выключении компа его можно отслеживать.
Мир спасти сможет только деанонимизация этого сообщения! Кусочек названия может.. для этого понадобится
найти это самое сообщение о завершении работы.
Что ты о нём знаешь? Когда в последний раз видел и где?
0
Avazart
Эксперт С++
7237 / 5433 / 304
Регистрация: 10.12.2010
Сообщений: 24,152
Записей в блоге: 17
07.07.2012, 03:17 #10
http://club.shelek.ru/viewart.php?id=71

А сообщение если не ошибаюсь WM_QUERYENDSESSION и WM_ENDSESSION...
0
Romadzao
7 / 7 / 1
Регистрация: 02.07.2012
Сообщений: 120
07.07.2012, 03:21  [ТС] #11
Спасибо! Назову брутфорсер в твою честь! А готов он будет предположительно уже завтра (но всегда найдутся внезапные портящие жизнь ошибки)!!!
0
Avazart
Эксперт С++
7237 / 5433 / 304
Регистрация: 10.12.2010
Сообщений: 24,152
Записей в блоге: 17
07.07.2012, 03:25 #12
А готов он будет предположительно уже завтра
Весьма оптимистично...
0
Romadzao
7 / 7 / 1
Регистрация: 02.07.2012
Сообщений: 120
07.07.2012, 17:32  [ТС] #13
Весьма оптимистично...
Пожалуй, не завтра, но в течении следующей недели. И тут возник вопрос: эти два сообщения, WM_QUERYENDSESSION и WM_ENDSESSION, их каким образом ловить-то? Нет, в винапе ещё можно, создать цикл, в нём PeekMessage() и всякое такое, но это нужно осуществить в приложении консольного типа, да ещё в отдельном потоке. С потоком разберусь как-нибудь, а с отловом - помогите кто-нибудь! Не советом вроде ридзефакинмануал т.е шел бы ты в библиотеку, а примером простенького кода или ссылкой хорошей!

Добавлено через 1 час 17 минут
И ещё один очень важный вопрос (мог бы отдельную тему создать, но какая разница): я прочитал кое-что про многопоточность, и если брутфорсер будет запросы серверу слать одновременно в двух потоках, значит ли это, что программа будет работать в 2 раза быстрее? Или всё же сервер за раз обрабатывает 1 запрос, а второй в это время в очередь станет? Или сервер такой мощный, что ему всё равно, сколько запросов, а потоки будут забирать ресурсы компа и взамен ускорять программу до невероятных скоростей?

Добавлено через 1 час 13 минут
Оке, раз никто не отвечает вынесу вопросы в отдельную тему
0
07.07.2012, 17:32
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.07.2012, 17:32
Привет! Вот еще темы с ответами:

Сохранение массива данных LPSTR - C++
Возможно, кому то вопрос покажется глупым, но если не сложно, подскажите пожалуйста. Среда - Visual C++. Я последовательно несколько раз...

Сохранение данных в написанной программе - C++
Здравствуйте! Подскажите, как сохранить все данные, которые обрабатывала моя программа?

Помогите сделать сохранение и загрузку данных - C++
народ есть вот такая программа: #include <conio.h> #include <iostream.h> #include <locale.h> #include <stdio.h> #include...

Получение данных из .dat и сохранение в .txt - C++
Существует бинарный файл с N вещественными числами (в начале файла стоит целое число N). Необходимо вывести его на экран и сохранить в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.