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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 23, средняя оценка - 4.70
Wanee
53 / 53 / 13
Регистрация: 02.02.2011
Сообщений: 427
#1

Будильник - C++

26.07.2011, 10:16. Просмотров 3008. Ответов 45
Метки нет (Все метки)

Начал делать примитивный будильник и столкнулся с проблемой. Когда комп отправляешь в сон, то будильник не срабатывает. Как сделать чтобы будильник сначала разбудил комп, а потом подал признаки жизни?
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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
#include <Windows.h>
#include <iostream>
#include <stdlib.h>
#include <conio.h>
using namespace std;
 
void gotoxy(int xpos, int ypos)
{
    COORD scrn;
    HANDLE hOuput = GetStdHandle(STD_OUTPUT_HANDLE);
    scrn.X = xpos; scrn.Y = ypos;
    SetConsoleCursorPosition(hOuput,scrn);
}
void prin(int x)
{
    if(x < 10)
        cout << '0';
    cout << x;
}
 
void main()
{   
    int c, m, a, b, f, t;
    bool z = true;
    char x[2], y[2], s[6];
 
    SYSTEMTIME st;
    setlocale(LC_ALL, "");
 
    cout << "Введите время: ";
    cin >> s;
 
    x[0] = s[0];
    x[1] = s[1];
    y[0] = s[3];
    y[1] = s[4];
 
    c = atoi(x);
    m = atoi(y);
 
    cout << "Текущие время: \nОсталось: ";
 
    while(z)
    {
        GetSystemTime(&st);
        a = st.wHour + 7;
        b = st.wMinute;
 
        f = c + 24 - a;
        t = m - b;
        if(t < 0)
        {
            f--;
            t += 60;
        }
        if(f > 23)
            f -= 24;
 
        gotoxy(15, 1);
        prin(a);
        cout << ':';
        prin(b);
 
        gotoxy(10, 2);
        prin(f);
        cout << ':';
        prin(t);
 
        if(c == a && m == b)
            z = false;
        Sleep(1000);
    }
 
    cout << "\n\nДля завершения нажмите Enter...";
 
    while(!kbhit())
    {
        cout << '\a';
        Sleep(1000);
    }
}
Время я забиваю к примеру: 23:34
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.07.2011, 10:16     Будильник
Посмотрите здесь:

Будильник. - C++
Написать программу будильник в С++ .

Будильник - C++
Кто может кинуть будильник на С++ Зарание благодарный!!!!!

Будильник Bada - C++
Так как среда разработки называется bada C++ имею полное право сюда писать. Вообще те у кого смарты на баде вообщем стандартном будильнике...

Нужна программа Музыкальный будильник! - C++
нужна программа Музыкальный будильник!!! Очень срочно

С чего начать, первая программа на компьютере "Будильник" - C++
Всем привет! Учусь на 3м курсе, для курсовой работы нужно сделать программу &quot;Будильник&quot; и вот в чем вопрос: Какую среду разработки...

Написать программу "Будильник" - C++
Хочу сделать будильник. Пишу на C++ первый день, до этого практики не было. Как отключить динамик? Если он включается то уже больше не...

Прокомментируйте программу "Будильник" - C++
Если с можете помагите с этим программой 3.2 Разработана программа для проверки работоспособности класса «Будильник» (Budilnik). ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
-=ЮрА=-
Заблокирован
Автор FAQ
26.07.2011, 10:51     Будильник #2
Я думаю систему можно разбудить послав сообщение типа WM_MOUSEMOVE (CLICK и т.д.)в систему или же програмно перегрузить комп, думаю это даже проще реализовать + если он стоял сспящим часов 8 перезагрузка в любом случае не помешает
Zverit
Уничтожитель печенек
277 / 205 / 21
Регистрация: 07.02.2010
Сообщений: 723
26.07.2011, 11:20     Будильник #3
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
перегрузить комп
Это лишнее будет. Нужно будет дополнительно реализовывать запоминание параметров будильника, автозапуск.
-=ЮрА=-
Заблокирован
Автор FAQ
26.07.2011, 11:31     Будильник #4
Параметры будильника можно заносить в отдельный файл, а при желании можно изголиться и произвести самозапись экзешника, помню пару месяцев назад писал в топике как модифицировать счётчик в самом экзешнике
Zverit
Уничтожитель печенек
277 / 205 / 21
Регистрация: 07.02.2010
Сообщений: 723
26.07.2011, 11:34     Будильник #5
-=ЮрА=-, можно сделать и не такое. Но сказано же
Цитата Сообщение от Wanee Посмотреть сообщение
примитивный будильник
Wanee
53 / 53 / 13
Регистрация: 02.02.2011
Сообщений: 427
26.07.2011, 11:40  [ТС]     Будильник #6
-=ЮрА=-, что то я не совсем понял что нужно сделать. Вы хотите искусственно нажать клавишу, чтобы пробудить копм?
-=ЮрА=-
Заблокирован
Автор FAQ
26.07.2011, 11:41     Будильник #7
Тогда нужно генерировать события которые будят комп - нажатие клавиатуры, мышь и т.д., по другому простыми способами думаю не реализвать...
Wanee
53 / 53 / 13
Регистрация: 02.02.2011
Сообщений: 427
26.07.2011, 11:44  [ТС]     Будильник #8
Ясно. А как допустим программно нажать клавишу Enter?
mimicria
return (true);
1956 / 1093 / 91
Регистрация: 19.04.2011
Сообщений: 2,344
26.07.2011, 11:44     Будильник #9
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
Тогда нужно генерировать события которые будят комп - нажатие клавиатуры, мышь и т.д.
Только эти события не сгенерируются, потому что комп спит
-=ЮрА=-
Заблокирован
Автор FAQ
26.07.2011, 11:49     Будильник #10
А с эксплорером работать нельзя?Например отловить хэндл рабочего стола и в это окошко сообщение кинуть???
Wanee
53 / 53 / 13
Регистрация: 02.02.2011
Сообщений: 427
26.07.2011, 11:50  [ТС]     Будильник #11
Тогда как?
jonson
231 / 204 / 61
Регистрация: 18.03.2010
Сообщений: 749
26.07.2011, 11:51     Будильник #12
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
Я думаю систему можно разбудить послав сообщение
при спящем режиме сее не получится. Т.к в этом состоянии не может работать ни один процесс. Это своего рода выключеный режим. Просто все данные из оперативной памяти выгружаются на винт, для последующего быстрого включения.
Как сделать чтобы будильник сначала разбудил комп
думаю ни как. Тут над смотреть в сторону биоса, что-то типа PowerManagment, и вручную настраивать. Может на низком уровне и возможно манипулировать этими опциями биоса, но лично я в этом оч сомневаюсь.
-=ЮрА=-
Заблокирован
Автор FAQ
26.07.2011, 11:54     Будильник #13
Я бы попробовал вот так(для работы нужен windows.h
C++
1
2
HWND hWnd = GetDesktopWindow();
    SendMessage(hWnd,WM_MOUSEMOVE,0,0);
Zverit
Уничтожитель печенек
277 / 205 / 21
Регистрация: 07.02.2010
Сообщений: 723
26.07.2011, 11:54     Будильник #14
Цитата Сообщение от jonson Посмотреть сообщение
Просто все данные из оперативной памяти выгружаются на винт
А не про гибернацию вы случаем говорите?
jonson
231 / 204 / 61
Регистрация: 18.03.2010
Сообщений: 749
26.07.2011, 11:56     Будильник #15
Цитата Сообщение от ITZver Посмотреть сообщение
А не про гибернацию вы случаем говорите?
она самая
Zverit
Уничтожитель печенек
277 / 205 / 21
Регистрация: 07.02.2010
Сообщений: 723
26.07.2011, 11:58     Будильник #16
Цитата Сообщение от jonson Посмотреть сообщение
она самая
Ну тык, гибернация и сон это разные вещи
Wanee
53 / 53 / 13
Регистрация: 02.02.2011
Сообщений: 427
26.07.2011, 12:00  [ТС]     Будильник #17
Не не, мне нужно из сна вывести.
mimicria
return (true);
1956 / 1093 / 91
Регистрация: 19.04.2011
Сообщений: 2,344
26.07.2011, 12:00     Будильник #18
Цитата Сообщение от ITZver Посмотреть сообщение
Ну тык, гибернация и сон это разные вещи
Да вы что? И в чем же разница?
Или вы тоже путаете спящий режим с ждущим?
Zverit
Уничтожитель печенек
277 / 205 / 21
Регистрация: 07.02.2010
Сообщений: 723
26.07.2011, 12:06     Будильник #19
Прошу прощения, попутал. До сих пор думал что ждущий режим это когда монитор отключается и компьютер просто уходит в режим меньшего энергопотребления
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.07.2011, 12:08     Будильник
Еще ссылки по теме:

будильник - Delphi
Помогите создать будильник с возможностью сворачиваться в трей на подобие такого

Будильник на C++ - C++ Builder
Помогите разобраться, нужно сделать будильник на C++

Будильник - C#
Подскажите пожалуйста, что здесь не так, уже голову сломала над этим. using System; using System.Collections.Generic; using...

Будильник - C++ Builder
Здравствуйте уважаемые программисты . Требуется сделать программу &quot;Будильник&quot; Помогите пожалуйста.

Будильник - Delphi
в будильнике нужно сделать, чтобы можно было выбрать любую песню мп3 и чтобы она играла в нужное время и на кнопку стоп прекращалась.. ...


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

Или воспользуйтесь поиском по форуму:
-=ЮрА=-
Заблокирован
Автор FAQ
26.07.2011, 12:08     Будильник #20
Вы пишете о биосе и о спящем режиме, хм а что же тогда обрабатывает события щелчка мыши, её движения, кликов по клаве, неужели биос а не ОС???
Yandex
Объявления
26.07.2011, 12:08     Будильник
Ответ Создать тему
Опции темы

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