Я работаю над некоторым кодом AutoIt, чтобы помочь мне с офисными шалостями и т. Д. Первая строка работает, чтобы переписать строку «shutdown pc00xxx» в shutdown /r /m pc00xxx /t 0
, но я не могу получить вторую строку для повтора.Переписывание строки в AutoIt работает один раз, но не во второй раз
У меня есть следующий код:
func RunProc($string)
Local $command = StringLower($string)
Local $subs = StringMid($command, 1, 4)
Local $computer = StringInStr($command, "pc")
if $subs == "shut" Then
Run("shutdown /r /m " & StringMid($command, $computer) & " /t 0")
ElseIf $subs == "clos" Then
Local $prleft = StringTrimLeft($command, 6)
Local $extend = StringInStr($command, "on")
Local $pright = StringTrimRight($prleft, $extend)
Local $strclose = StringMid($string, $prleft, $pright)
Run("taskkill.exe /S "& StringMid($command, $computer) & " /im " & $strclose & ".exe")
EndIf
Проблема заключается в том, что я пытаюсь переписать фразу «ЗАКРЫТЬ„НЕЧТО“ON„pc00xxx“быть Taskkill.exe/S pc00xxx/им SOMETHING.exe , Я пытаюсь получить подстроку между «ЗАКРЫТО» и «ON pc00xxx».
Так, например, я напечатал бы ЗАКРЫТЬ ПРОГНОЗ НА PC00xxx и имеют значение $ strclose быть:
$strclose = outlook