Функция BlockInput

         Описание функции


BlockInput

Отключает/включает использование мыши и клавиатуры.

BlockInput ( flag )

Параметры

flag 1 = отключить пользовательский ввод
0 = включить пользовательский ввод

Возвращаемое значение

Успех:Возвращает 1.
Ошибка:Возвращает 0. Уже сделано или #requireAdmin не использовано.

Примечания

Таблица ниже показывает поведение функции BlockInput в зависимости от версии Windows; однако, в любом случае, нажатие Ctrl+Alt+Del на любой платформе позволит включить пользовательский ввод (особенность Windows API).

Операционная система Результат работы "BlockInput"
Windows 2000 Пользовательский ввод блокируется, AutoIt по-прежнему может симулировать мышь и ввод с клавиатуры.
Windows XP Пользовательский ввод блокируется, AutoIt по-прежнему может симулировать мышь и ввод с клавиатуры. См. примечания по поводу проблемы с Windows XP SP1.
Windows Vista Пользовательский ввод блокируется, AutoIt по-прежнему может симулировать мышь и ввод с клавиатуры при условии использования #RequireAdmin.

Обновление Windows выпущенное в Windows XP SP1 содержало баг, который предотвращал высылку нажатия клавиши Alt (через функцию Send()) при включенном BlockInput(). Баг Windows был исправлен в Windows XP SP2 и последующих.

BlockInput() относится только к пользовательскому вводу. Ввод из функций, таких как Send() или MouseMove() по-прежнему будет работать.

См. также

Send

Пример

BlockInput(1)

Run("notepad")
WinWaitActive("[CLASS:Notepad]")
Send("{F5}") ; вставляем дату и время

BlockInput(0)