Автор Тема: _BlockInputEx иногда пропускает нажатие мыши  (Прочитано 575 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн autoall [?]

  • Новичок
  • *
  • Сообщений: 19
  • Репутация: 0
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Используется BlockInputEx 1.8 в среде autoit 3.3.14.3 + SCiTE 17.224.935.0.
ОС: Windows 10 x64 1709 в виртуальной машине vmware.

Свои проблемы я свёл вот в такой незамысловатый скрипт:
Код: AutoIt [Выделить]
#include "BlockInputEx.au3"

HotKeySet("{ESC}", "BlockOff_Func")

Local $cnt



$cnt = 0
_BlockInputEx(1, "{ESC}")

While 1
  Run("explorer.exe C:\Temp")
  WinWait("Temp")
  WinActivate("Temp")

  Send ("!h", 0)
  Send ("!pr", 0)
  Send("{ENTER}")

  WinWait("Свойства: Temp")
  WinActivate("Свойства: Temp")

  Sleep(100)
  $cnt = $cnt + 1
  If ($cnt = 20) Then
    ExitLoop
  EndIf
WEnd

_BlockInputEx(0)



Exit



Func BlockOff_Func()
  _BlockInputEx(0)
EndFunc


Вообщем - ничего особого: 20 раз по приведённому алгоритму в среде Windows 10 открываем папку C:\Temp и потом открываем её свойства. На время сего волшебного действия блокируем любой ввод. В случае проблем оставляем для себя возможность по ESC блокировку отключить. Если ничего не делать или делать вяло, то такая блокировка работает и реально помогает. Но если я, запустив скрипт, буду истошно по какому-то свободному участку рабочего стола молотить правой кнопкой мыши, то покажется контекстное меню! Т.е. иногда происходит что-то этакое, что фильтрация действий клавиатуры или мыши не срабатывает! Методом тыка установил, что на это сильное слияние оказывает наличие WinActivate в коде. Но я не разработчик я не понимаю должно это так быть или нет, т.е. такое влияние объяснимо в т.з. алгоритма функции или нет. По моему, пользовательскому разумению, такого быть не должно и это баг, а для моей программы - вообще уязвимость в некотором роде, так как если пользователь сделает что-то в неудачное время, то моя программа запортит всю систему и лучше её тогда вообще не делать)

Большая просьба - может кто-то проверить?
Если это подтвердится, то надо как-то с разработчиком связать что ли - функция-то реально ведь хорошая и полезная.

Русское сообщество AutoIt

_BlockInputEx иногда пропускает нажатие мыши
« Отправлен: Февраль 18, 2018, 17:05:10 »

 

Похожие темы

  Тема / Автор Ответов Последний ответ
9 Ответов
6670 Просмотров
Последний ответ Апрель 13, 2011, 00:31:01
от Bloodrinker
9 Ответов
3242 Просмотров
Последний ответ Июнь 08, 2011, 23:26:49
от madmasles
2 Ответов
2658 Просмотров
Последний ответ Сентябрь 30, 2011, 00:56:20
от agikon
0 Ответов
1063 Просмотров
Последний ответ Январь 03, 2015, 23:03:42
от damien2008
2 Ответов
1013 Просмотров
Последний ответ Февраль 06, 2015, 13:05:10
от p44
5 Ответов
1476 Просмотров
Последний ответ Февраль 28, 2015, 19:45:28
от AndreySeVeN
3 Ответов
904 Просмотров
Последний ответ Июль 20, 2015, 15:01:01
от alex33
2 Ответов
6749 Просмотров
Последний ответ Март 05, 2016, 15:56:51
от Alofa
0 Ответов
266 Просмотров
Последний ответ Август 31, 2017, 21:03:19
от madjahed
3 Ответов
171 Просмотров
Последний ответ Июль 24, 2018, 20:32:19
от Alofa