4 / 4 / 0
Регистрация: 11.03.2011
Сообщений: 115
|
||||||
Глобальный хук клавиатуры19.04.2011, 17:13. Показов 34526. Ответов 24
Метки нет Все метки)
(
Я пишу программу с функцией воспроизведения.
Мне нужно, что бы программа при нажатии на клавишу начинала воспроизведение, или переходила на следующий или предыдущий трек. При этом нужна возможность задания этих клавиш. В моей программе есть специальный интерфейс(Interface) в котором есть описание для функции CurrentOptions. То есть мне надо, что бы я нажал на какую то клавишу и если значение
Как мне сделать такой глобальный хук?
0
|
19.04.2011, 17:13 | |
Ответы с готовыми решениями:
24
На глобальный хук клавиатуры ругаются антивирусники Отслеживание состояния "NumLock" или глобальный хук клавиатуры Глобальный хук |
4 / 4 / 0
Регистрация: 11.03.2011
Сообщений: 115
|
||||||
19.04.2011, 18:18 [ТС] | ||||||
в том то и проблема, что нужно перехватить клавишу даже если в другом приложении находишься. В интернете нашел множество примеров хуков (5 штук), но во всех одна беда: они не тянут такие команды, как
0
|
![]() 36 / 36 / 8
Регистрация: 10.02.2010
Сообщений: 184
|
||||||
19.04.2011, 18:19 | ||||||
А зачем глобальный то хук???
Вот тебе пример (здесь зделанно на правую кнопку...Меняй на что угодно):
0
|
4 / 4 / 0
Регистрация: 11.03.2011
Сообщений: 115
|
||||||||||||||||
19.04.2011, 18:21 [ТС] | ||||||||||||||||
Я использовал и этот код:
1
|
![]() 36 / 36 / 8
Регистрация: 10.02.2010
Сообщений: 184
|
||||||
19.04.2011, 18:28 | ||||||
Когда-то давно использовал...попробуй, скорее всего поможет.
Это клас, глобального перехватчика...Работать с ним так:
2
|
4 / 4 / 0
Регистрация: 11.03.2011
Сообщений: 115
|
||||||
19.04.2011, 18:48 [ТС] | ||||||
А как сопоставить это событие с кнопкой?
Я сделал пока так:
Добавлено через 1 минуту Смотрю на MSDN: каждая буква обладает кодом типа такого: \u0058 как обычную клавишу представить в таком виде? Добавлено через 2 минуты на мсдн написано, что клавиши имеют код с постояной U в начале и к этому прибавляется четырехзначный, 16-битный код: от U+0000 до U+ffff
0
|
![]() 36 / 36 / 8
Регистрация: 10.02.2010
Сообщений: 184
|
||||||
19.04.2011, 18:49 | ||||||
Ой...забыл...извини...сделай так:
хе) тут не видно...сейчас файлом скину)
0
|
![]() 36 / 36 / 8
Регистрация: 10.02.2010
Сообщений: 184
|
||||||
19.04.2011, 19:06 | ||||||
Эмм...странно...а Debugом пользовался??? вообще заходит в функцию MyKeyPress???
Ещё одно, может это из-за языка??? дело в том, что там же на русском языке сделанно...Попробуй в Form1Load добавить
0
|
![]() 36 / 36 / 8
Регистрация: 10.02.2010
Сообщений: 184
|
||||||
19.04.2011, 19:16 | ||||||
Да какая разница)) первое что надо проверить, это то, заходит ли вообще в функцию MyKeyPress...
Если не умеешь пользоваться Debug, то напиши так:
Русски потому что в char[][] sym имеет русские символы
0
|
![]() 36 / 36 / 8
Регистрация: 10.02.2010
Сообщений: 184
|
|
20.04.2011, 03:56 | |
Ну измени язык на англйский, и измени русские буквы в char[][] sym, на соответствующие английские...а на счёт служебных, то пользуйся debug, и смотри чему равно значение e.KeyChar для, скажем, F1....или Home....всё просто))
0
|
20.04.2011, 03:56 | ||||||
Помогаю со студенческими работами здесь
20
Глобальный хук на CreateProcess Не ставится глобальный хук на мышь Глобальный хук перестает работать Глобальный Хук и ошибка 126
Искать еще темы с ответами Или воспользуйтесь поиском по форуму:
|
|
Новые блоги и статьи
![]() |
||||
Не удержался от оценки концепции двигателя Стирлинга.
Hrethgir 03.04.2025
Сколько не пытался - она выдавала правильные схемы, причём случайно рисовала горячие области в середине, холодные по краям, трубки с краёв в низ и магнит в соединяющей, но при этой выдавала описание. . .
|
Метод с двумя буферами (или double buffering) или ping-pong buffering
Hrethgir 02.04.2025
Из ответов LM модели.
Метод, который предполагает использование двух массивов для хранения промежуточных результатов сложения векторов, обычно применяется в сценариях, где необходимо минимизировать. . .
|
На любовном киберфронте
Alexander-7 01.04.2025
Недавно на одном малоизвестном сайте знакомств мною заинтересовалась девушка:
«Текст немного странный. Но, судя по адресу почты, иностранка», – подумал я. Поколебавшись пару суток, я ответил ей:. . .
|
Как работает Node.js изнутри
run.dev 29.03.2025
Node. js изменил подход к разработке веб-приложений, позволив использовать JavaScript не только на стороне клиента, но и на сервере. Созданный в 2009 году Райаном Далем, этот открытый,. . .
|
Моки в Python: Mock Object Library
py-thonny 29.03.2025
Тестирование кода требует особого подхода, когда речь идёт о компонентах, взаимодействующих с внешним миром. Мы часто сталкиваемся с непредсказуемостью HTTP-запросов, чтением данных из базы или. . .
|
JavaScript: Управление памятью и улучшение производительности
run.dev 29.03.2025
В отличие от низкоуровневых языков программирования, JavaScript не требует ручного выделения и освобождения памяти. Здесь работает автоматический сборщик мусора, который определяет, какие объекты. . .
|
Мультитенантная архитектура со SpringBoot и PostgreSQL
ArchitectMsa 29.03.2025
SaaS-приложения редко обслуживают одного клиента и обычно они должны поддерживать множество организаций, каждая из которых работает в своём изолированном пространстве. Мультитенантная архитектура. . .
|
std::span в C++: Производительность и лучшие практики
NullReferenced 28.03.2025
std::span — одно из самых недооценённых нововведений стандарта C++20, которое радикально меняет подход к работе с непрерывными последовательностями данных. По сути, это невладеющее представление. . .
|
Многопоточность в C#: Threadpool
UnmanagedCoder 28.03.2025
Пул потоков в C# — это коллекция заранее созданных и готовых к использованию потоков, которые находятся в распоряжении приложения. Вместо того чтобы создавать и уничтожать потоки для каждой небольшой. . .
|
Вопросы на собеседованиях по микросервисам
ArchitectMsa 27.03.2025
Работодатели ищут не просто разработчиков, знающих базовые концепции, а специалистов, разбирающихся в тонкостях масштабирования, отказоустойчивости и производительности. Сейчас на первый план выходят. . .
|