Форум программистов, компьютерный форум CyberForum.ru

Как по клавише прекратить (приостановить) запись в файл? - C++

Восстановить пароль Регистрация
 
tumanovalex
Сообщений: n/a
01.11.2010, 14:15     Как по клавише прекратить (приостановить) запись в файл? #1
Консольное приложение VC6. Есть функция записи в файл. Данные пишутся в цикле:
while(i < file_size)
{
fputs(buffer,file_out);
i=i+buf_size;
}
Хотелось бы, чтобы при нажатии ESC прерывалась запись файла, а при нажатии клавиши 'пробел' возникала бы пауза в записи файла на заданное время.
Когда в цикл помещаю код для реализации выхода по ESC
char ch = getch();
if(ch==27)
{
cout << 'Escape' << endl;
return 0;
}
программа замирает, видимо ждет нажатия клавиши. Что я делаю неправильно? Как правильно отслеживать нажатие клавиш в цикле?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
palva
 Аватар для palva
2373 / 1595 / 190
Регистрация: 08.06.2007
Сообщений: 6,364
Записей в блоге: 4
01.11.2010, 18:34     Как по клавише прекратить (приостановить) запись в файл? #2
Чтобы не попасть в ожидание, нужно сначала проверить, имеются ли нажатые клавишы в буфере клавиатуры. Для этого используется функция _kbhit См. MSDN или http://www.codenet.ru/progr/cpp/spru/kbhit.php
tumanovalex
Сообщений: n/a
02.11.2010, 08:42     Как по клавише прекратить (приостановить) запись в файл? #3
Спасибо большое, попробую
tumanovalex
Сообщений: n/a
02.11.2010, 08:45     Как по клавише прекратить (приостановить) запись в файл? #4
Спасибо большое, попробую
zyablik
0 / 0 / 0
Регистрация: 11.06.2010
Сообщений: 40
03.11.2010, 15:17     Как по клавише прекратить (приостановить) запись в файл? #5
Лучше организовать это в отдельном потоке. Примера пока нет.
Yandex
Объявления
03.11.2010, 15:17     Как по клавише прекратить (приостановить) запись в файл?
Ответ Создать тему
Опции темы

Текущее время: 16:18. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru