Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/8: Рейтинг темы: голосов - 8, средняя оценка - 5.00
0 / 0 / 4
Регистрация: 03.04.2015
Сообщений: 9

Глобальный перехват клавиши Alt

24.08.2015, 00:24. Показов 1753. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток!
Мне нужно чтобы при нажатии левого Alt во всех программах ничего не происходило, при этом оставить программам возможность вызывать сочетаний с ней (Alt+tab, Alt+буква, Alt+цифра и прочие).

Попробовал реализовать через RegisterHotKey, но UINT vk ни равное Keys.Alt, ни Keys.LMenu не блокирует вообще никак.
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
using System;
using System.Windows.Forms;
using System.Runtime.InteropServices;
 
namespace AntiAlt
{
    public partial class Form1 : Form
    {
        [DllImport("user32.dll")]
        private static extern bool RegisterHotKey(IntPtr hWnd, int id, uint fsModifiers, uint vk);
        [DllImport("user32.dll")]
        private static extern bool UnregisterHotKey(IntPtr hWnd, int id);
        public Form1()
        {
            InitializeComponent();
            RegisterHotKey(this.Handle, 0, 0, (uint)Keys.Alt);
        }
 
        private void Form1_FormClosing(object sender, FormClosingEventArgs e)
        {
            UnregisterHotKey(this.Handle, 0);
        }
    }
}
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
24.08.2015, 00:24
Ответы с готовыми решениями:

Глобальный перехват нажатий клавиатуры
Ребят нужен код на глобальный перехват нажатий на клавиатуре Мне не надо перехват с мышки а только с клавиатуры и только одной...

Глобальный перехват сочетаний клавиш
Всем привет! Как возможно при свернутой форме, отловить нажатие 2-3 клавиш(одновременно, например ctrl+alt+b)? И если их нажали то...

Собственное событие по нажатию клавиши Alt
Задание: Разработать собственное событие на нажатие клавиши ALT. Консольный вариант. Подскажите как это сделать, чтобы событие в ALT.cs...

2
27 / 55 / 19
Регистрация: 18.08.2014
Сообщений: 329
24.08.2015, 13:15
Phemmer, вызвать Process.sleep(); это не то?
0
43 / 43 / 21
Регистрация: 24.08.2015
Сообщений: 136
24.08.2015, 14:03
RegisterHotKey позволяет только получить информацию о нажатых хоткеях в системе.
Попробуй SetWindowsHookEx. Поставить хук на KeyboardProc или LowLevelKeyboardProc и отменить событие в обработчике
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
24.08.2015, 14:03
Помогаю со студенческими работами здесь

Не работает перехват клавиши
Помогите разобраться... имеется код... private void Form1_KeyDown(object sender, KeyEventArgs e) { if...

Перехват нажатия клавиши F11 в другом приложении
Здравствуйте форумчанины! Мне нужно в моем приложении перехватывать нажатие клавиши F11. У меня есть программа автокликер,...

Заблокировать комбинацию кнопок Alt + Tab и Alt + Esc?
Как временно заблокировать комбинацию кнопок Alt + Tab и Alt + Esc?

Глобальный перехват нажатий клавиши
Всем привет, помогите переписать код. Нужно сделать чтобы при нажатии на кнопку Numpad1 выполнялся код. Пример такой ...

Глобальный перехват клавиш
Народ, подсобите пожалуйста! Че-то у мня ваще не выходит эту штуку заставить работать на стандартном WinForm'е. Скачал пример ОТСЮДА, сам...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru