Powershell не будет отправлять ключи после блокировки - PullRequest
2 голосов
/ 19 июня 2019

Я пытаюсь создать автокликер, который может работать в фоновом режиме или когда другие пользователи используют компьютер, а учетная запись, в которой включен автокликер, не вышла из системы (я использую Windows 10)

Я пытался запустить скрипт с правами администратора.Тем не менее, это все еще возвращает ту же проблему.Я полагаю, что это может быть проблема с безопасностью Windows, а не самой PowerShell, однако я не знаю других методов.

add-type -AssemblyName microsoft.VisualBasic
add-type -AssemblyName System.Windows.Forms

$wshell = New-Object -ComObject wscript.shell;

do {
[Microsoft.VisualBasic.Interaction]::AppActivate("Program")
[System.Windows.Forms.SendKeys]::SendWait("m");
start-sleep -Milliseconds 1050
} while ($true)

Это вывод:

Exception calling "SendWait" with "1" argument(s): "Access is denied"
At C:\Users\me\Desktop\ASI.ps1:8 char:1
+ [System.Windows.Forms.SendKeys]::SendWait("m");
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
    + FullyQualifiedErrorId : Win32Exception

Есть ли какие-либометод, который может имитировать ввод с клавиатуры, даже если рабочий стол заблокирован?

1 Ответ

0 голосов
/ 20 июня 2019

Вы не сможете завершить то, что вы пытаетесь сделать изначально.

Вы сможете создать виртуальную машину, которая сможет продолжить работу, пока компьютер заблокирован.Таким образом, вы можете запускать все свои скрипты и игры внутри виртуальной машины, блокировать физическую машину и все готово.

Даже запустив ее как запланированную задачу с установленным флажком «Запускать, вошел пользователь или нет»,это не даст вам желаемых результатов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...