Помогите кто-нибудь, мне нужен код который будет блокировать клаву, очень желательно написанный на VB.net
Заранее большое спасибо!!!
Просто очень надо!
- mitch-aurora
- Частый гость
- Сообщения: 140
- Зарегистрирован: Пн дек 05, 2005 9:08
- Откуда: Шахты
- Контактная информация:
Помогите с клавой
Чтоб мудро жизнь прожить, знать надобно немоло,
Два важных правила запомни для начала:
Ты лучше голодай, чем что попало есть,
И лучше будь один, чем вместе с кем попало.
(Омар Хайям)
Два важных правила запомни для начала:
Ты лучше голодай, чем что попало есть,
И лучше будь один, чем вместе с кем попало.
(Омар Хайям)
mitch-aurora,
насчёт VB.NET это очень проблемотично, всё равно прийдётся к WinAPI обращать, а для этого писать враппер.
Задача решается так:
Пишешь DLL в которой устанавливаешь (SetWindowsHookEx) и обрабатываешь ловушку WH_KEYBOARD.
пример на Delphi можешь тут глянуть
http://kladovka.net.ru/index.cgi?pid=list&rid=195 правда для твоих целей этот пример надо немного доработать. Примеров на C++ полно в нете.
чтобы заблокировать сообщение - KeyboardProc должна позвращать значение отличное от нуля.
можно ещё использовать WH_KEYBOARD_LL, тогда не прийдётся оформлять код ловушки в виде DLL, но работать будет только на Windows NT/2000/XP.
Ещё глянь в сторону BlockInput.
насчёт VB.NET это очень проблемотично, всё равно прийдётся к WinAPI обращать, а для этого писать враппер.
Задача решается так:
Пишешь DLL в которой устанавливаешь (SetWindowsHookEx) и обрабатываешь ловушку WH_KEYBOARD.
пример на Delphi можешь тут глянуть
http://kladovka.net.ru/index.cgi?pid=list&rid=195 правда для твоих целей этот пример надо немного доработать. Примеров на C++ полно в нете.
чтобы заблокировать сообщение - KeyboardProc должна позвращать значение отличное от нуля.
можно ещё использовать WH_KEYBOARD_LL, тогда не прийдётся оформлять код ловушки в виде DLL, но работать будет только на Windows NT/2000/XP.
Ещё глянь в сторону BlockInput.
Люблю повеселиться, особенно пожрать,
Люблю и поработать, особенно поспать )
Люблю и поработать, особенно поспать )
- mitch-aurora
- Частый гость
- Сообщения: 140
- Зарегистрирован: Пн дек 05, 2005 9:08
- Откуда: Шахты
- Контактная информация:
Я понял, слушай через консоль это можно какнить задействовать, ну знаешь типа %windir%\system32\rundll32.exe user32.dll,LockComputer есть такое, мне впринципе хватило и того чтобы это окно не выскакивало, есть ли что-нибудь по типу LockComputer = False?
Чтоб мудро жизнь прожить, знать надобно немоло,
Два важных правила запомни для начала:
Ты лучше голодай, чем что попало есть,
И лучше будь один, чем вместе с кем попало.
(Омар Хайям)
Два важных правила запомни для начала:
Ты лучше голодай, чем что попало есть,
И лучше будь один, чем вместе с кем попало.
(Омар Хайям)
- mitch-aurora
- Частый гость
- Сообщения: 140
- Зарегистрирован: Пн дек 05, 2005 9:08
- Откуда: Шахты
- Контактная информация:
DbIMok,
да
Я написал прожку, она блочить клаву и мышь, но на клаве остаются рабочими только ctrl+alt+del, мне нужно что-бы их убрать тоже!
да
Я написал прожку, она блочить клаву и мышь, но на клаве остаются рабочими только ctrl+alt+del, мне нужно что-бы их убрать тоже!
Чтоб мудро жизнь прожить, знать надобно немоло,
Два важных правила запомни для начала:
Ты лучше голодай, чем что попало есть,
И лучше будь один, чем вместе с кем попало.
(Омар Хайям)
Два важных правила запомни для начала:
Ты лучше голодай, чем что попало есть,
И лучше будь один, чем вместе с кем попало.
(Омар Хайям)
- mitch-aurora
- Частый гость
- Сообщения: 140
- Зарегистрирован: Пн дек 05, 2005 9:08
- Откуда: Шахты
- Контактная информация:
не в этом дело, мне нужно просто заблочить клаву с мышей. Мышу я болчу и клаву тоже но единственное что остается это блочить CTRL+ALT+DELDbIMok писал(а):может проще сделать то что нужно политиками безопасности?
Вот код который написан в Visual Studio 2005 на Basic'е :
Imports Microsoft.Win32
Public Class Form1
Private Declare Function BlockInput Lib "user32" (ByVal fBlock As Long) As Long
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
BlockInput(True)
'wait 10 seconds before unblocking it
Sleep(5000)
'unblock the mouse and keyboard input
BlockInput(False)
' Call AllowKeys(True)
End Sub
Здесь блочиться мыша и клава на 5 сек.
Может кто подскажет как и эти три гребанные клавиши за блочить?
Чтоб мудро жизнь прожить, знать надобно немоло,
Два важных правила запомни для начала:
Ты лучше голодай, чем что попало есть,
И лучше будь один, чем вместе с кем попало.
(Омар Хайям)
Два важных правила запомни для начала:
Ты лучше голодай, чем что попало есть,
И лучше будь один, чем вместе с кем попало.
(Омар Хайям)
тебе Eraser уже сказал. если хочешь подробнее, почитай например это:mitch-aurora писал(а):Может кто подскажет как и эти три гребанные клавиши за блочить?
http://www.sources.ru/cpp/system/ctrl_a ... inxp.shtml