Как отправить ввод с помощью мыши или клавиатуры без включения флага LLMHF_INJECTED? - PullRequest
1 голос
/ 14 октября 2008

В данный момент я использую функцию SendInput(), но если вы устанавливаете низкоуровневый хук мыши, устанавливается LLMHF_INJECTED, указывающий, что вход был введен в поток. Есть ли способ отправки мыши и ввода с клавиатуры, чтобы LLMHF_INJECTED не был установлен?

Ответы [ 2 ]

2 голосов
/ 16 сентября 2013

Один из способов сделать это - установить собственный обработчик хука низкого уровня и очистить LLMHF_INJECTED внутри него. Это изменение, похоже, распространяется на все другие крючки вниз по цепочке.

2 голосов
/ 21 октября 2008

Раймонд Чен описывает этот вопрос как гонку вооружений. Предположим, S - это метод подделки таких инъекций. Тогда можно было бы увидеть здесь вопрос: как я могу определить, использовался ли S для ввода с клавиатуры или мыши? Суть этого флага в том, что Microsoft решила, что подделка возможна, но обнаружима.

...