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

Ищу готовую задачку с таймером - C++

Восстановить пароль Регистрация
 
Eurobel
 Аватар для Eurobel
6 / 6 / 1
Регистрация: 16.12.2011
Сообщений: 14
22.06.2012, 18:43     Ищу готовую задачку с таймером #1
Ждущий таймер.

Консольное приложение типа «Будильник» с функциями «Соня». Время срабатывания и период напоминания вводятся в командной строке при запуске программы.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Avazart
 Аватар для Avazart
6893 / 5133 / 250
Регистрация: 10.12.2010
Сообщений: 22,560
Записей в блоге: 17
22.06.2012, 19:46     Ищу готовую задачку с таймером #2
А почему именно консольный?
zulkis
 Аватар для zulkis
681 / 608 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
22.06.2012, 23:26     Ищу готовую задачку с таймером #3
Цитата Сообщение от Avazart Посмотреть сообщение
А почему именно консольный?
Видимо неудобно человеку GUI делать
Avazart
 Аватар для Avazart
6893 / 5133 / 250
Регистрация: 10.12.2010
Сообщений: 22,560
Записей в блоге: 17
22.06.2012, 23:31     Ищу готовую задачку с таймером #4
Видимо неудобно человеку GUI делать


Насчет темы: то легче самому написать... сомневаюсь что есть именно консольные примеры
zulkis
 Аватар для zulkis
681 / 608 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
22.06.2012, 23:35     Ищу готовую задачку с таймером #5
Еще тема классно поставлена. Не вопрос, не просьба, а утверждение. Удачи с поисками.

А насчет самой программы, да, согласен, проще самому написать, особенно если программа, насколько я могу судить, для "сдачи в универе".
Eurobel
 Аватар для Eurobel
6 / 6 / 1
Регистрация: 16.12.2011
Сообщений: 14
23.06.2012, 12:38  [ТС]     Ищу готовую задачку с таймером #6
Не судите меня строго, слово «решить» в заголовок темы движок форма вставить не позволяет, вот и назвал тему как смог

Вот что удалось склепать по задаче, но как сделать чтобы параметром в командной строке принималось заданное время срабатывания будильника, а не отсрочка срабатывания не знаю. Поэтому всё ещё прошу вашей помощи.

C++
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
50
51
52
53
54
55
#include <windows.h>
#include <stdio.h>
#include <time.h>
#include <tchar.h>
#include <stdlib.h> // Для работы  функции atoi
 
char bufRus[256];   
char* Rus(const char*);
 
int main(int argc, char* argv[])
{
    const int nTimerUnitsPerSecond = 10000000;
    int n=0;
    SYSTEMTIME st;
    LARGE_INTEGER li;
    
    HANDLE hTimer = CreateWaitableTimer(NULL, FALSE, NULL); // создаем таймер
 
    time_t rawtime;
 
    time ( &rawtime );
    system("cls"); 
    printf(Rus("Консольное приложение \"Ждущий таймер\".\t Сейчас: %s"), ctime (&rawtime) );
    if (argv[1] == NULL | argv[2] == NULL)
        {
        printf(Rus("\nОдин или оба аргумента в коммандной строке отсутсвуют\n"));
        system("pause"); 
        }
    else
        {
        int k, p = 0;
        k= atoi(argv[1]); 
        p= atoi(argv[2]); 
 
        printf(Rus("\nПервый параметр %d;\t Второй параметр %d\n\n"), k, p);
        printf(Rus("\nПервое срабатывание таймера через %d секунд, затем каждые %d минут\n\n"), k, p);
 
        li.QuadPart = -(k * nTimerUnitsPerSecond);
        if(SetWaitableTimer(hTimer, &li, p*60*1000, NULL, NULL, FALSE)){
            while(TRUE)
                {
                n++;
                WaitForSingleObject(hTimer, INFINITE);
                GetLocalTime(&st);
                printf(Rus("Пора вставать!!!\tБудильник сработал %d раз в: \t%.2d:%.2d:%.2d\n"), n, st.wHour, st.wMinute, st.wSecond);
                }
        }
    }
}
 
char* Rus(const char *text)     // Функция преобразования символов
{
    CharToOemA(text, bufRus);
    return bufRus;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.06.2012, 21:18     Ищу готовую задачку с таймером
Еще ссылки по теме:

Сравнение строк и работа с таймером C++
прокомментируйте пожалуйста готовую программу C++
C++ Переписать готовую функцию более элегантно

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

Или воспользуйтесь поиском по форуму:
Avazart
 Аватар для Avazart
6893 / 5133 / 250
Регистрация: 10.12.2010
Сообщений: 22,560
Записей в блоге: 17
23.06.2012, 21:18     Ищу готовую задачку с таймером #7
Найди ф-цию получения системного времени... и переодически сравнивай системное время с заданным....(например с интервалом 30сек...)
Yandex
Объявления
23.06.2012, 21:18     Ищу готовую задачку с таймером
Ответ Создать тему
Опции темы

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