54 / 54 / 23
Регистрация: 02.02.2011
Сообщений: 436
1

Будильник

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

Author24 — интернет-сервис помощи студентам
Начал делать примитивный будильник и столкнулся с проблемой. Когда комп отправляешь в сон, то будильник не срабатывает. Как сделать чтобы будильник сначала разбудил комп, а потом подал признаки жизни?
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
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.07.2011, 10:16
Ответы с готовыми решениями:

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

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

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

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

45
Заблокирован
Автор FAQ
26.07.2011, 10:51 2
Я думаю систему можно разбудить послав сообщение типа WM_MOUSEMOVE (CLICK и т.д.)в систему или же програмно перегрузить комп, думаю это даже проще реализовать + если он стоял сспящим часов 8 перезагрузка в любом случае не помешает
1
Уничтожитель печенек
281 / 209 / 49
Регистрация: 07.02.2010
Сообщений: 724
26.07.2011, 11:20 3
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
перегрузить комп
Это лишнее будет. Нужно будет дополнительно реализовывать запоминание параметров будильника, автозапуск.
0
Заблокирован
Автор FAQ
26.07.2011, 11:31 4
Параметры будильника можно заносить в отдельный файл, а при желании можно изголиться и произвести самозапись экзешника, помню пару месяцев назад писал в топике как модифицировать счётчик в самом экзешнике
0
Уничтожитель печенек
281 / 209 / 49
Регистрация: 07.02.2010
Сообщений: 724
26.07.2011, 11:34 5
-=ЮрА=-, можно сделать и не такое. Но сказано же
Цитата Сообщение от Wanee Посмотреть сообщение
примитивный будильник
0
54 / 54 / 23
Регистрация: 02.02.2011
Сообщений: 436
26.07.2011, 11:40  [ТС] 6
-=ЮрА=-, что то я не совсем понял что нужно сделать. Вы хотите искусственно нажать клавишу, чтобы пробудить копм?
0
Заблокирован
Автор FAQ
26.07.2011, 11:41 7
Тогда нужно генерировать события которые будят комп - нажатие клавиатуры, мышь и т.д., по другому простыми способами думаю не реализвать...
0
54 / 54 / 23
Регистрация: 02.02.2011
Сообщений: 436
26.07.2011, 11:44  [ТС] 8
Ясно. А как допустим программно нажать клавишу Enter?
0
return (true);
1976 / 1111 / 221
Регистрация: 19.04.2011
Сообщений: 2,345
26.07.2011, 11:44 9
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
Тогда нужно генерировать события которые будят комп - нажатие клавиатуры, мышь и т.д.
Только эти события не сгенерируются, потому что комп спит
0
Заблокирован
Автор FAQ
26.07.2011, 11:49 10
А с эксплорером работать нельзя?Например отловить хэндл рабочего стола и в это окошко сообщение кинуть???
0
54 / 54 / 23
Регистрация: 02.02.2011
Сообщений: 436
26.07.2011, 11:50  [ТС] 11
Тогда как?
0
240 / 213 / 84
Регистрация: 18.03.2010
Сообщений: 750
26.07.2011, 11:51 12
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
Я думаю систему можно разбудить послав сообщение
при спящем режиме сее не получится. Т.к в этом состоянии не может работать ни один процесс. Это своего рода выключеный режим. Просто все данные из оперативной памяти выгружаются на винт, для последующего быстрого включения.
Как сделать чтобы будильник сначала разбудил комп
думаю ни как. Тут над смотреть в сторону биоса, что-то типа PowerManagment, и вручную настраивать. Может на низком уровне и возможно манипулировать этими опциями биоса, но лично я в этом оч сомневаюсь.
1
Заблокирован
Автор FAQ
26.07.2011, 11:54 13
Я бы попробовал вот так(для работы нужен windows.h
C++
1
2
HWND hWnd = GetDesktopWindow();
    SendMessage(hWnd,WM_MOUSEMOVE,0,0);
0
Уничтожитель печенек
281 / 209 / 49
Регистрация: 07.02.2010
Сообщений: 724
26.07.2011, 11:54 14
Цитата Сообщение от jonson Посмотреть сообщение
Просто все данные из оперативной памяти выгружаются на винт
А не про гибернацию вы случаем говорите?
0
240 / 213 / 84
Регистрация: 18.03.2010
Сообщений: 750
26.07.2011, 11:56 15
Цитата Сообщение от ITZver Посмотреть сообщение
А не про гибернацию вы случаем говорите?
она самая
1
Уничтожитель печенек
281 / 209 / 49
Регистрация: 07.02.2010
Сообщений: 724
26.07.2011, 11:58 16
Цитата Сообщение от jonson Посмотреть сообщение
она самая
Ну тык, гибернация и сон это разные вещи
0
54 / 54 / 23
Регистрация: 02.02.2011
Сообщений: 436
26.07.2011, 12:00  [ТС] 17
Не не, мне нужно из сна вывести.
0
return (true);
1976 / 1111 / 221
Регистрация: 19.04.2011
Сообщений: 2,345
26.07.2011, 12:00 18
Цитата Сообщение от ITZver Посмотреть сообщение
Ну тык, гибернация и сон это разные вещи
Да вы что? И в чем же разница?
Или вы тоже путаете спящий режим с ждущим?
1
Уничтожитель печенек
281 / 209 / 49
Регистрация: 07.02.2010
Сообщений: 724
26.07.2011, 12:06 19
Прошу прощения, попутал. До сих пор думал что ждущий режим это когда монитор отключается и компьютер просто уходит в режим меньшего энергопотребления
0
Заблокирован
Автор FAQ
26.07.2011, 12:08 20
Вы пишете о биосе и о спящем режиме, хм а что же тогда обрабатывает события щелчка мыши, её движения, кликов по клаве, неужели биос а не ОС???
0
26.07.2011, 12:08
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.07.2011, 12:08
Помогаю со студенческими работами здесь

Нужен простой таймер-будильник(консольный)
Играю в БДО(не реклама), и вот понадобился простой таймер, который бы оповещал меня о прошествии...

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

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

Прокомментируйте программу "Будильник"
Если с можете помагите с этим программой 3.2 Разработана программа для проверки...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru