185 / 188 / 17
Регистрация: 26.11.2010
Сообщений: 511

Заблокировать Ctrl+Alt+Del

03.06.2011, 17:00. Показов 23737. Ответов 23
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Собственно, попробовал повесить глобальный хук на Alt (LMenu, RMenu и Menu) и на Delete - ничего не сработало. У кого-то есть гарантированно рабочий пример перехвата и блокировки (не через реестр)?

P.S. Не вирус я пишу.
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.06.2011, 17:00
Ответы с готовыми решениями:

Заблокировать Ctr + alt + del часть 2
Тема была закрыта в связи с обсуждением написания вредоносного ПО. Народ , подскажите пожалуйста , как решить проблему с этим кодом . ...

Как заблокирвоать комбинацию ctrl+alt+del?
Собственно вопрос в названии. Ни что из того что я нашёл в интернете не помогло - оно по сути просто блокирует диспетчер задач как правило...

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

23
18.06.2011, 18:15
Студворк — интернет-сервис помощи студентам

Не по теме:

Памирыч, спасибо за такое оригинальное решение проблемы, этого не знал, теперь буду в эту ветвь смотреть, если что то у кого то перестанет запускаться

0
18 / 18 / 2
Регистрация: 05.12.2013
Сообщений: 95
26.12.2013, 14:46
Цитата Сообщение от SYD Посмотреть сообщение
Диспетчер задач можно вызвать Ctrl+Shift+Esc, а также простым нажатием правой кнопкой мышки на панели задач.
Вот... может что придумаешь.
Заблокировать клавишу Win
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
using System.Runtime.InteropServices;
    using System.Diagnostics;
 
    public partial class Form1 : Form
    {
        [StructLayout(LayoutKind.Sequential)]
        private struct KBDLLHOOKSTRUCT
        {
            public Keys key;
            public int scanCode;
            public int flags;
            public int time;
            public IntPtr extra;
        }
        private delegate IntPtr LowLevelKeyboardProc(int nCode, IntPtr wParam, IntPtr lParam);
        [DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)]
        private static extern IntPtr SetWindowsHookEx(int id, LowLevelKeyboardProc callback, IntPtr hMod, uint dwThreadId);
        [DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)]
        private static extern bool UnhookWindowsHookEx(IntPtr hook);
        [DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)]
        private static extern IntPtr CallNextHookEx(IntPtr hook, int nCode, IntPtr wp, IntPtr lp);
        [DllImport("kernel32.dll", CharSet = CharSet.Auto, SetLastError = true)]
        private static extern IntPtr GetModuleHandle(string name);
        [DllImport("user32.dll", CharSet = CharSet.Auto)]
        private static extern short GetAsyncKeyState(Keys key);
        private IntPtr ptrHook;
        private LowLevelKeyboardProc objKeyboardProcess;
 
 
        public Form1()
        {
            InitializeComponent();
        }
        protected override bool ProcessDialogKey(Keys keyData)
        {
            switch (keyData)
            {
                case Keys.Control:
                    return true;
                default:
                    return base.ProcessDialogKey(keyData);
            }
        }
        private IntPtr captureKey(int nCode, IntPtr wp, IntPtr lp)
        {
            if (nCode >= 0)
            {
                KBDLLHOOKSTRUCT objKeyInfo = (KBDLLHOOKSTRUCT)Marshal.PtrToStructure(lp, typeof(KBDLLHOOKSTRUCT));
                if (objKeyInfo.key == Keys.RWin || objKeyInfo.key == Keys.LWin) //вот тут и блокируется WinKey {   
                    return (IntPtr)1;
            }
 
            return CallNextHookEx(ptrHook, nCode, wp, lp);
        }
 
 
        //заблакировать
        private void button1_Click(object sender, EventArgs e)
        {
            ProcessModule objCurrentModule = Process.GetCurrentProcess().MainModule;
            objKeyboardProcess = new LowLevelKeyboardProc(captureKey);
            ptrHook = SetWindowsHookEx(13, objKeyboardProcess, GetModuleHandle(objCurrentModule.ModuleName), 0);
 
        }
        //разблокировать
        private void button2_Click(object sender, EventArgs e)
        {
 
            if (ptrHook != IntPtr.Zero)
            {
                UnhookWindowsHookEx(ptrHook);
                ptrHook = IntPtr.Zero;
            }
 
        }
хватит мой код воровать!!!!!!!


Заблокировать сочетание Control + Esc и control alt delete (пользователь тыкает все подряд)
1
27.12.2013, 02:32

Не по теме:

РЕН1998, он не уникален чтобы так нервничать...

0
5 / 5 / 2
Регистрация: 13.10.2015
Сообщений: 407
11.03.2016, 15:21
А почему бы просто не сделать форму программы всегда поверх всех окон и на все рыло монитора, перекрывая так же панель задач Даже если и запустишь диспетчер задач, он сразу утыркается за форму я так баннер сделал на свой комп и добавил его в меню быстрого запуска, чтоб блокировать, если отходишь от компа, пока пароль не введешь хрен закроется баннер )
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
11.03.2016, 15:21

Обработать нажатие DEL и Ctrl+V
Ребята помогите пожалуйста!!!!! у меня такая проблема, мне нужно чтобы у меня распознавалась кнопка delete и комбинации клавиш ctrl v...

Отключение ctrl+alt+delete в windows 10
Доброго утра! :) Кто-нибудь знает, как отключить или заблокировать сочетание клавиш ctrl+alt+delete в win 10. И запустить форму от...

ReadKey() не реагирует на нажатия Alt,Ctrl,Shift
Не реагирует на нажатия Alt,Ctrl,Shift . ConsoleKeyInfo press; Console.WriteLine("введите символы :"); ...

Разворот формы на весь экран, включая таскабар, запрет Win+D, Ctrl+Alt+Del
Увидел подобное в WinCC, - форма разворачивается на весь экран и никак не реагирует на стандартные средства сворачивания. Как такое...

Mouse Click + ALT/CTRL
Есть PictureBox. Как в обработчике PictureBox_Mouse_Click узнать был ли нажат CTRL либо ALT во время клика?


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

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

Новые блоги и статьи
Когда логика программы не спасает от человеческих ошибок
Maks 18.08.2026
В последнее время всё чаще и чаще сталкиваюсь с таким явлением, как абсолютная невнимательность (или глупость) пользователей. Проявляется это чаще всего на работе в коллективе. Допустим, человек с. . .
Лето уходит
kumehtar 17.08.2026
Мысли в слух
kumehtar 17.08.2026
Забавно, насколько сейчас стала доступна информация. Например о магии, духовном развитии, медитациях, и других подобных направлениях, ранее зачастую тайных, передаваемых от учителя к ученику. Хотя. . .
Перемещение строк из ТЧ в другой документ с учетом текущего пробега
Maks 17.08.2026
Реализация из решения ниже выполнена на примере нетипового документа "Автозапчасти", с ТЧ "Шины". За основу взят алгоритм отсюда: https:/ / www. cyberforum. ru/ blogs/ 359708/ 10838. html Задача: . . .
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет: 1. Использовать системное время и дату, 2. Есть возможность вводить время и дату вручную. 3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber. Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
Установка MinGW GCC 16.2 и CMake
8Observer8 10.08.2026
VK Видео: https:/ / vkvideo. ru/ video-240781534_456239017 YouTube: eY5-5PyI9NM Текстовая версия
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru