Форум программистов, компьютерный форум, киберфорум
C++: WinAPI
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.62/13: Рейтинг темы: голосов - 13, средняя оценка - 4.62
22 / 22 / 7
Регистрация: 30.01.2009
Сообщений: 103
1

Как сделать глобальные горячие клавиши

21.10.2010, 19:20. Просмотров 2538. Ответов 3
Метки нет (Все метки)


Как сделать глобальные горячие клавиши как Winamp или Aimp. К примеру ты играешь и слушаешь музыку управляя при этом плеером?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.10.2010, 19:20
Ответы с готовыми решениями:

Глобальные горячие клавиши
Народ помогите разобраться как сделать чтоб горячие клавиши работали глобально! Т.е. чтобы действие...

Глобальные горячие клавиши RegisterHotKey
Всем привет! У меня что-то не получаеться сделать глобальные клавиши с помощью функции...

Как узнать зарегистрированные глобальные клавиши?
Как узнать какая программа зарегистрировала глобальное сочетание клавиш в системе. те которые...

Горячие клавиши в консольной программе
Добрый день. У меня консольная программа под windos: в программе запущенны 2 патока. int...

3
Автор FAQ
3683 / 960 / 114
Регистрация: 10.01.2010
Сообщений: 2,550
21.10.2010, 20:17 2
Alex90, очень интересно, а ведь на многих кливиатурах сейчас есть мультимедия клавиши, которые это позволяют. Может нажимать их программно как то можно?)
0
2821 / 1630 / 252
Регистрация: 03.12.2007
Сообщений: 4,222
21.10.2010, 20:21 3
Для сочетаний с Ctrl, Alt, Shift - RegisterHotKey; для мультимедийных клавиш - SetWindowsHookEx, WH_SHELL, HSHELL_APPCOMMAND. Если надо по-универсальному, ставь хук на клавиатуру.
0
22 / 22 / 7
Регистрация: 30.01.2009
Сообщений: 103
23.10.2010, 11:42  [ТС] 4
парылся нашел вот этот код dll
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
#include <windows.h>
#include <iostream>
 
#ifdef __cplusplus
extern "C" {
#endif
 
HHOOK hHKeyBrd = NULL;
 
LRESULT CALLBACK KeyBrdProc(int nCode, WPARAM wParam, LPARAM lParam)
{
 
 DWORD IsDown, ScanCode;
 if (nCode == HC_ACTION)
    MessageBox(0, "!!!", "", 0);
 return CallNextHookEx (hHKeyBrd,nCode,wParam,lParam);
}
 
__declspec(dllexport) bool SetHooks(HINSTANCE hModule)
{
    hHKeyBrd = SetWindowsHookEx(WH_KEYBOARD, KeyBrdProc, (HINSTANCE) hModule, NULL);
    return true; 
}
 
__declspec(dllexport) bool UnHook()
{
    return true;
}
 
#ifdef __cplusplus
}
#endif
1). Бокс вызывается два раза в чем загвоздка?
2). Не жирно будет ставить хук?
3). Не во всех программах срабатывает
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.10.2010, 11:42

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь или здесь.

Настраиваемые горячие клавиши пользователем
Всем добрый день. Хочу сделать такую штуку, чтобы пользователь сам мог назначить горячие клавиши в...

Как сделать блокирование одной клавиши?
Здравствуйте, у меня задача, мне нужно чтобы программа при нажатии Left Shift + Left Ctrl + F2...

WTL как Сделать Мультиселект? Пересылка сообщений Обработчик события нажатия клавиши
Hi ALL! Сабж в том, что я ни разу в глаза не видел WTL и вообще не вкурю откуда у него ноги...

Как сделать глобальные горячие клавиши?
Как сделать глобальные горячие клавиши? Пользуюсь вот таким кодом public partial class Form1...


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

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

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