Я ищу некоторый код (желательно С#), который предотвратит ввод клавиатуры и мыши.
Как заблокировать ввод клавиатуры и мыши в С#?
Ответ 1
Расширение на Josh (правильный) ответ. Здесь подпись PInvoke для этого метода.
public partial class NativeMethods {
/// Return Type: BOOL->int
///fBlockIt: BOOL->int
[System.Runtime.InteropServices.DllImportAttribute("user32.dll", EntryPoint="BlockInput")]
[return: System.Runtime.InteropServices.MarshalAsAttribute(System.Runtime.InteropServices.UnmanagedType.Bool)]
public static extern bool BlockInput([System.Runtime.InteropServices.MarshalAsAttribute(System.Runtime.InteropServices.UnmanagedType.Bool)] bool fBlockIt) ;
}
public static void BlockInput(TimeSpan span) {
try {
NativeMethods.BlockInput(true);
Thread.Sleep(span);
} finally {
NativeMethods.BlockInput(false);
}
}
ИЗМЕНИТЬ
Добавлен код для демонстрации того, как блокировать интервал
Ответ 2
Посмотрите BlockInput Функция Win32
Звучит как веселое тестирование:)
Ответ 3
Взгляните на эту статью Обработка глобальных мышек и клавиатурных крючков на С#. Парень, который написал эту статью, сделал много исследований вокруг проблемы.
Возможно, в нем есть что-то, что вы можете использовать.