Autoit как запустить программу

Учебник по autoit 26
В интернете существует запрос на учебник по autoit.Я хочу попытаться в некотором роде восполнить этот запрос.
Программирование на бейсике начинается с объявления переменной.Переменная — это область памяти,из которой можно либо считывать информации либо перезаписывать информацию.В большинстве случаев такой информацией являются целые числа,так как компьютер заточен на работу именно с числовыми данными.Хотя autoit и поддерживает строковые данные,но на самом деле в компьютере они представляются в виде определенных чисел,каждому символу соответствует свой числовой код.Поэтому становится тривиальной задачей сравнивать символ с символом на равенство и неравенство — на компьютере это представляет собой сравнивание одного целого числа с другим.
Чтобы начать писать программы на autoit необходимо научиться работать с текстовыми файлами в операционной системе,ибо программа это ничто иное,как текстовый файл.
Набрав текст программы — его сохраняют на жесткий диск с расширением au3 — любой файл программы на autoit должен заканчиваться этим расширением.Обычно в контекстном меню рабочего стола в разделе — Создать — можно выбрать пункт — AutoIt v3 Script,который создаёт файл с именем AutoIt v3 Script.au3.Само имя файла потом можно сменить.Если программа является однофайловой,то не имеет значение,какое имя у неё.

Autoit Скачивание и установка

Выше я уже поднимал вопрос по переменным.Теперь продолжим изучение этого предмета при программировании на бейсике.
В autoit существует два оператора объявления переменных Local и Global.
Local используется,как легко понять из названия самого оператора, для объявления локальных переменных.Global используется для объявления глобальных переменных.Обычно локальные переменные определяются в какой-либо отдельной функции и только в ней и существуют.
Вообще локальные и глобальные переменные является основными объектами,которые используются при построении программ любой сложности,их достаточно для любых мыслимых нужд программирования.

Следующим важным шагом в овладении программированием на autoit являются функции.Функции — это по сути отдельная подпрограмма и может многократно вызываться для выполнения своего кода,хотя и располагается в одном определённом месте потока выполнения.

Каждая функция имеет имя,по которому программисту её нужно вызывать.Синтаксис функции выглядит так:
func имя функции
здесь инструкции
endfunc

Чтобы вызвать функцию необходимо набрать её имя и поставить круглые скобки,как открывающую,так и закрывающую.
Также функция может получать параметры через запятую.Параметры назначаются в круглых скобках.
Чтобы возвратить значение из функции используется оператор return.Когда функция возвращает значение,тогда прекращает своё выполнение и переходит в место своего вызова.

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

Автоматизация интерактивных инсталляций с AutoIT


Для вывода какой-либо информации на экран в autoit используется функция msgbox.
MsgBox(0, «Сообщение», «Привет,я программа autoit»)
Для ввода информации подойдёт функция inputbox.
Local $result = inputbox(«Вопрос»,»Как вас зовут?»)
MsgBox(0, «», «привет «Вопрос»,»Как зовут твою кошку ?»)
if $result = «Муся» then
MsgBox(0, «», «Муся — » это хорошее имя для кошки «)
endif

Вторым важным вариантов ветвления является if then else endif.

Local $result = inputbox(«Вопрос»,»Как зовут твою кошку ?»)
if $result = «Муся» then
MsgBox(0, «», «Муся — » это хорошее имя для кошки «)
else
MsgBox(0, «», «Имя вашей кошки не Муся «)
endif

Для выполнения множественного ветвления используется конструкция If ElseIf then Else EndIf.

Local $result = inputbox(«Вопрос»,»Как зовут твою кошку ?»)
if $result = «Муся» then
MsgBox(0, «», «Муся — » это хорошее имя для кошки «)
ElseIf $result = «Мурзик» then
MsgBox(0, «», «Имя вашей кошки Мурзик «)
Else
MsgBox(0, «», «Имя вашей кошки ни Муся ни Мурзик «)
endif
Всех перечисленных видов ветвления вполне достаточно для программирования всевозможных условий в языке autoit.Но в нём существуют и другие операторы выбора.

В autoit существуют различные циклические конструкции для повторения инструкций.Первым оператором цикла рассмотрим for.
Часто цикл for используют вот так:
for $i = 0 to 10 step 1
MsgBox(0,»Сообщение»,»Номер итерации цикла » Вопрос»,»Тебе больше 18 лет?»,»да»)
if $result = «да» then ExitLoop
wend
При положительном ответе на вопрос программа завершит своё выполнение,в противном продолжит,так как цикл является бесконечным до тех пор,пока не получит утвердительный ответ пользователя.

Как в любом другом языке программирования в autoit имеются арифметические операторы — сложение(+),вычитание(-),умножение(*),деление(/).

Local $var1 = 10
Local $var2 = 10
msgbox(0,»Сложение»,$var1+$var2)
msgbox(0,»Вычитание»,$var1-$var2)
msgbox(0,»Умножение»,$var1*$var2)
msgbox(0,»Деление»,$var1/$var2)

Арифметические действия в autoit выполняются почти также,как в обычной школьной математике.

Логические операторы необходимы в autoit для составления различных условий,которые вычисляются и в соотвествии с ними выполняются или не выполняются некоторые участки кода.Такими операторами являются логическое И — and,логическое ИЛИ — or и логическое НЕ — not.Этих трёх логических операторов достаточно для формирования любых мыслимых программистом условий в программе на autoit.

Читайте также:
Лучшая программа поиска лекарств

Local $var1 = 5
Local $var2 = 10
if $var1 = 5 and $var2 = 10 then msgbox(0,»Сообщение»,»Переменные соответствуют заданному программистом начальному условию»)

Более реалистичный пример — это определение входит ли введенное пользователем число в диапазон,который можно представить в программе,как условие с логическим оператором.

while 1
Local $result = inputbox(«Сообщение»,»Введите целое число»)
if $result >0 and $result < 10 then
msgbox(0,»Сообщение»,»Число входит в диапазон»)
else
msgbox(0,»Сообщение»,»Число не входит в диапазон»)
endif
wend

Отдельное место в программировании занимают графические интерфейсы.В современных операционных системах поддерживается огромное количество графических элементов,которые могут использоваться в программах для осуществления взаимодействия с пользователем компьютера.Наиболее часто используемые графические элементы по моему мнению это кнопка и текстовое поле.
Программирование взаимодействия с пользователем — важный этап в проектировании и конструировании программ.Поэтому необходимо тщательно и скрупулёзно подходить к построению графических интерфейсов.

Ниже показана программа,которая выводит на экран окно с кнопкой,которая закрывает это окно.
#include

Local $hGUI = GUICreate(«Первое графическое окно на autoit»)
Local $idOK = GUICtrlCreateButton(«закрыть окно», 310, 370, 85, 25)

While 1
if GUIGetMsg() = $idOK then

ExitLoop
endif
WEnd

Вышеприведённая программа хороша,но имеет один минус — она не закрывается на крестик.Поэтому я привожу программу,которая лишена этого недостатка.

Local $hGUI = GUICreate(«Первое графическое окно на autoit»)
Local $idOK = GUICtrlCreateButton(«закрыть окно», 310, 370, 85, 25)

$msg = GUIGetMsg()
if $msg = $idOK then
ExitLoop
endif
if $msg = $GUI_EVENT_CLOSE then
ExitLoop
endif

Теперь событие от программы записывается в переменную $msg.

В autoit-программах часто используется инструкция #include.Она позволяет включать в текущий программный файл другой программный файл.Инструкция #include с угловыми скобками обычно ищет файл в директории C:Program FilesAutoIt3Include.
А вот инструкция #include с двойными кавычками требует полный путь к файлу.

По умолчанию autoit-программа показывает свою иконку в системном трее.Если нажать на эту иконку выпадает контекстное меню,которое позволяет завершить исполняемый процесс.При необходимости отключить данную опцию — нужно в начале исходного кода написать инструкцию #NoTrayIcon.

Иногда необходимо выполнить проверку на согласия пользователя выйти из приложения.

Local $hGUI = GUICreate(«»)
Local $idExit = GUICtrlCreateButton(«закрыть окно», 310, 370, 85, 25)

$msg = GUIGetMsg()
if $msg = $idExit then
ExitLoop
endif
if $msg = $GUI_EVENT_CLOSE then

Local $result = MsgBox($MB_OKCANCEL, «Сообщение», «Вы действительно хотите закрыть приложение»)

if $result = 1 then exitloop

Функция MsgBox возвращает определенное числовое значение,по которому autoit-программа определяет,какую кнопку нажал пользователь и в соответствии с этим выполнить какую-либо программную операцию.

Первый параметр функции MsgBox назначает вид диалогового окна,который будет отображаться для пользователя.

Функция HotKeySet позволяет регистрировать клавишу,по которой выполняется какая-нибудь инструкция.

Local $hGUI = GUICreate(«Окно выхода из windows»)
Local $idExit = GUICtrlCreateButton(«Завершить работу в windows», 0, 100, 400, 25)

$msg = GUIGetMsg()
if $msg = $idExit then
Local $result = MsgBox($MB_OKCANCEL, «Сообщение», «Вы действительно хотите завершить работу в windows»)

if $result = 1 then Shutdown(1)

endif
if $msg = $GUI_EVENT_CLOSE then
ExitLoop
endif

Вполне возможно создать autoit-программу,которая имитирует поведение главного меню windows,в котором выполняется переход в спящий режим,перезагрузка и завершение работы с операционной системой.

Функция GUICtrlRead позволяет считать информацию из текстового поля по его идентификатору.

Local $hGUI = GUICreate(«Запуск программы»)

Local $nameLabel = GUICtrlCreateLabel(«Имя программы»,0,0)
Local $nameProgram = GUICtrlCreateInput(«notepad»,0, 25, 400, 20)
Local $idRun = GUICtrlCreateButton(«Запустить программу», 0, 100, 400, 25)

В данном случае идентификатор передаваемый в функцию GUICtrlRead это $nameProgram.Функция Run в соответствии с полученным текстом из текстового поля выполняет запуск программы,если она действительно существует.

Local $hGUI = GUICreate(«Разрешение экрана»)

Local $Label_1 = GUICtrlCreateLabel(«Ширина экрана»,0,0)
Local $Label_2 = GUICtrlCreateLabel(«»,0,30,400,25)
Local $Label_3 = GUICtrlCreateLabel(«Высота экрана»,0,60)
Local $Label_4 = GUICtrlCreateLabel(«»,0,90,400,25)
Local $idRun = GUICtrlCreateButton(«Получить разрешение», 0, 120, 400, 25)

Функция GUICtrlSetData записывает произвольный текст в текстовое поле,нужно лишь указать идентификатор первым параметром,а необходимый текст передать вторым параметром.

Функция может возвращать числовое значение,которое потом можно использовать в autoit-программах.Это её свойство применяется в вышеприведенных исходниках в операторах ветвления if и там специальным образом обрабатывается.
Пользовательская функция имеет тело.Тело функции — это определённые инструкции на языке autoit.

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

Run(«notepad.exe»)
while 1
Sleep(1000)
Send(«Привет»)
WEnd

Данная выше autoit-программа не очень интеллектальна,она просто вызывает программу блокнота с помощью функции Run и отправляет с помощью функции Send некоторый текст.

Run(«notepad.exe»)
while 1
Sleep(1000)
Send(«Привет»)
Send(«»)
WEnd

Функция Send вообще используется для имитации нажатия клавиш клавиатуры.
Send(«») имитирует нажатие клавиши ввода ENTER.

В autoit-программе выше происходит запуск блокнота и записываетcя время запуска.В переменной $stime формируется время запуска при помощи оператора конкатенации строк — амперсанда,а функция FileWrite производит запись информации в файл логирования.

Читайте также:
Как отключить партнерскую программу

Local $hGUI = GUICreate(«Запуск сайта»)

Local $Label_1 = GUICtrlCreateLabel(«Путь к браузеру»,0,0)
Local $path_program = GUICtrlCreateInput(«C:Program Local $Label_2 = GUICtrlCreateLabel(«Адрес открываемого сайта»,0,60)
Local $url = GUICtrlCreateInput(«google.ru»,0,90,400,25)
Local $idRun = GUICtrlCreateButton(«Запустить сайт в браузере», 0, 120, 400, 25)

$msg = GUIGetMsg()
if $msg = $idRun then

Run(‘»‘ ‘»‘ https://stihi.ru/2023/03/08/1940″ target=»_blank»]stihi.ru[/mask_link]

AutoIt скрипты — введение и FAQ

AutoIt

Эта статья появилась на сайте ввиду популярности AutoIt у посетителей форума Автоматической Установки Windows. Статья состоит из двух частей. В первой — введение в AutoIt, целиком взятое из русской справки к AutoIt, которую очень грамотно перевел с английского Валерий Иванов. К сожалению, найти координаты автора не удалось, но хочется верить, что он не возражает против публикации его трудов.

Я настоятельно рекомендую загрузить справку и ознакомиться с уроками, из которых вы сразу узнаете, насколько просто автоматизировать установку приложений при помощи AutoIt. Вторая часть статьи представляет собой список часто задаваемых на конференции Oszone вопросов о работе с AutoIt. Ответы, конечно, прилагаются. «Oszone AutoIt FAQ» для вас подготовил Sanja Alone.

Введение в AutoIt

  • Симулировать нажатия комбинаций клавиатуры (поддерживается основная масса раскладок клавиатуры)
  • Симулировать перемещения указателя мыши и нажатия на ее кнопки
  • Перемещать, менять размер и управлять параметрами отображения окон
  • Непосредственно взаимодействовать с «управляющими элементами» (controls) окна (получать/менять надпись, перемещать, отключать, и т.п. действия)
  • Работать с буфером обмена для пересылки его текстового содержания
  • Читать, менять и создавать ключи и значения реестра

Новая версия AutoIt3 распознает общепринятые конструкции и имеет стандартный синтаксис, напоминающий синтаксис VBScript и BASIC, и поддерживает обработку сложных выражений, выполнение собственных функций, проводить циклические и условные вычисления. Помимо этого AutoIt3 приспособлен для всего того, что уже давно используют ветераны-сценаристы.

Как и раньше AutoIt имеет небольшой размер интерпретатора (~100KB), который является самостоятельным и не ссылается на другие, кроме системных .dll библиотек. Он намеренно не делает самостоятельных или скрытых записей в реестре, кроме обязательных и составляющих процесс полной установки. Сценарии могут быть скомпилированы в независимые выполняемые файлы с помощью поставляемого компилятора сценариев — Aut2Exe.

Вместе с интерпретатором модернизируются ActiveX и DLL версия AutoIt, которые называются AutoItX3. Эта библиотека представляет собой объединенный композит (COM и стандартная DLL библиотека в одном модуле). AutoItX3 позволяет добавлять уникальные возможности AutoIt в написанные Вами приложения на других языках программирования!

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

Oszone AutoIt FAQ

Читайте руководство к AutoIt — многое прояснится 🙂 Нижеизложенное — это что-то вроде краткой справки и FAQ по совместительству.

Запуск приложений

  1. Обычный запуск

Run(‘C:Program FilesRivaTunerRivaTuner.exe’)
;или так:
FileChangeDir(‘C:Program FilesRivaTuner’)
Run(‘RivaTuner.exe’)

RunWait(‘RivaTuner20RC158.exe /s’)

Системные переменные

  1. В принципе, макросы дублируют большинство системных переменных, но не все. Добраться напрямую к их значениям можно с пом. ф-ции EnvGet, например:

EnvGet(«SYSTEMDRIVE»)

;имя создаваемой переменной
$newsysvarname=’new’
;тип переменной
$newsysvartype=’REG_SZ’
;значение переменной
$newsysvarvalue=’value’
$smcur=’HKEY_LOCAL_MACHINESYSTEMControlSet’ %03s»,RegRead(«HKEY_LOCAL_MACHINESYSTEMSelect»,»Current»)) envvariable»[,»value»]), но она будет существовать только до выхода из текущего скрипта.

Ввод данных / работа с элементами управления

  1. Посылка символов в активный элемент активного окна

;нажать кнопку Button4, в окне установки Winamp, содержащем текст Interface and Skin Selection ControlClick(‘Winamp’,’Interface and Skin Selection’,’Button4′) ;выбрать radiobutton с текстом I accept the agreement’,’Check’,») ;выбрать строку Full Install из выпадающего списка ComboBox1 в окне установки FLY 2000 TV, содержащем текст Выберите тип установки ControlCommand(‘FLY 2000 TV’,’Выберите тип установки’,’ComboBox1′,’SelectString’,’Full Install’)

; 1 — привязка к левому верхнему углу экрана (по ум.)
; 0 — привязка к активному окну
; 2 — привязка к клиентской части активного окна (все то, что ниже заголовка)
Opt(«MouseCoordMode»,2)

;фрагмент информационного окна AutoIt Window Info:
Control ID: 1
ClassNameNN: Button2
Text:

Ну, а если Вы предварительно убедитесь в активности окна с пом. WinWaitActive, то нажать на кнопку по умолчанию всегда можно банальным Send(»). Т.e. клацнуть по этому батону 🙂 можно 4 способами:

Работа с ini-файлами

  1. У AutoIt-а есть пять ф-ций для этих целей:

Импорт данных из reg-файла в реестр

  1. С помощью функции RunWait и штатной утилиты regedit.exe

;отключение информационного окна в кодеке DivX
RegWrite(«HKEY_CURRENT_USERSoftwareDivXNetworksDivX4Windows»,»Disable feedback»,»REG_DWORD»,0x00000001)
;регистрация WinAmp-а
RegWrite(«HKEY_LOCAL_MACHINESOFTWARENullsoftWinamp», «regname», «REG_SZ», «xxxxxxxxxxxxx»)
RegWrite(«HKEY_LOCAL_MACHINESOFTWARENullsoftWinamp», «regkey», «REG_SZ», «xxxxxxxxxxxxxxxxxxxxxxxx»)
;удаление WinampAgent-а из автостарта
RegDelete(«HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun», «WinampAgent»)

Предотвращение возможности множественного запуска скрипта

В начало скрипта добавьте такие строки:

Отлов «случайных» окон

  1. Если место появления окна известно

;ждем не более 2 секунд. Будет окно — отработаем с ним, нет — просто пойдем дальше
If WinWait(«Installer Language»,»»,2) Then
WinActivate(«Installer Language»)
WinWaitActive(«Installer Language»)
Send(«»)
EndIf

If WinExists(‘Регистрация FineReader 7.0′,’Пожалуйста’) Then
WinActivate(‘Регистрация FineReader 7.0′,’Пожалуйста’)
Send(»)
ControlClick(‘Регистрация FineReader 7.0′,’Пожалуйста’,’Button4′)
WinWaitActive(‘Регистрация’,’Внимание!’)
Send(»)
EndIf

;на протяжении выполнения тела скрипта каждые 500 мс (по ум. 250) будет выполняться ф-ция wfp AdlibEnable(«wfp»,500) . ;тело скрипта . Func wfp() If WinExists(‘Защита файлов Windows’,’Файлы’) Then ControlClick(‘Защита файлов Windows’,’Файлы’,’Button3′) WinWait(‘Защита файлов Windows’,’Вы отказались’) ControlClick(‘Защита файлов Windows’,’Вы отказались’,’Button1′) EndIf EndFunc

;достаем из реестра имя исполняемого файла браузера по умолчанию
$defaultbrowser = RegRead (‘HKEY_LOCAL_MACHINESOFTWAREClientsStartMenuInternet’,»)
;ждем процесс браузера (проверка на наличие процесса в памяти производится каждые 250 мс
;на практике это означает, что окно браузера даже не успеет появиться)
ProcessWait ( $defaultbrowser )
;закрываем процесс браузера
ProcessClose ( $defaultbrowser )
;дожидаемся момента полной выгрузки процесса браузера из памяти (это не обязательно)
ProcessWaitClose ( $defaultbrowser )

Отлов ошибок

  1. Для начала проверьте правильность синтаксиса и кодировку au3-файла. Для проверки синтаксиса удобно использовать специальные редакторы — мне нравится SciTE (Ctrl+F5 — проверка синтаксиса, F4 — переход к след. ошибке).
  2. Если Ваш скрипт где-то, непонятно почему зависает, то посмотреть что его так озадачило можно так:
  1. Добавляем в начало скрипта строку Opt(«TrayIconDebug»,1) и убираем строку Opt(«TrayIconHide»,1) конечно, если она есть.
  2. Запускаем скрипт и, когда он застрянет, лезем мышкой к иконке АвтоИт-а в трэе и не нажимаем клавиш. Появится всплывающая подсказка, состоящая из 2 строк — в первой будет имя скрипта, а во второй строка на к-рой он застопорился (что-то вроде Line 5: WinWait(«Name»,»Text»)) Причем лучше запускать au3-файл, т.к. в случае с exe (откомпилированный скрипт) не будет показан номер строки.

Как с помощью AutoIt сменить раскладку клавиатуры

  1. WinAPI-метод (предложил ANGRO)

Run(«notepad.exe») Sleep(500) ;установка режима поиска окон по указателям (Advanced mode) Opt(«WinTitleMatchMode»,4) ;получение указателя (уникального идентификатора) окна с именем класса «Notepad» и запись его в переменную $hWnd $hWnd = WinGetHandle(«classname=Notepad») ;переключение раскладки в окне, определяемом указателем $hWnd _SetKeyboardLayout(«00000409», $hWnd) Func _SetKeyboardLayout($sLayoutID, $hWnd) Local $WM_INPUTLANGCHANGEREQUEST = 0x50 Local $ret = DllCall(«user32.dll», «long», «LoadKeyboardLayout», «str», $sLayoutID, «int», 0) DllCall(«user32.dll», «ptr», «SendMessage», «hwnd», $hWnd, «int», $WM_INPUTLANGCHANGEREQUEST, «int», 1, «int», $ret[0]) EndFunc Exit #cs
Дополнительные языки.

«00000407» Немецкий (стандартный)
«00000409» Английский (США)
«0000040C» Французский (стандартный)
«0000040D» Финский
«00000410» Итальянский
«00000415» Польский
«00000419» Русский
«00000422» Украинский
«00000423» Белорусский
«00000425» Эстонский
«00000426» Латвийский
«00000427» Литовский
#ce

Полезные ссылки

  • Сайт AutoIt
  • Русскaя справка к AutoIt
  • Коллекция AutoIt скриптов от Sanja Alone
  • AutoIt скрипты .:[общие вопросы]:. (тема на OSZone)

Источник: www.oszone.net

Запуск скриптов

При запуске AutoIt предлагает пользователю выбрать скрипт. Скрипт — это простой текстовый файл, содержащий ключевые слова и функции, объясняющие AutoIt, что от него требуется сделать. Скрипт можно создать простым текстовым редактором (например, Блокнотом) или чем-нибудь получше.

Несмотря на то, что AutoIt v3 скрипты являются обычными текстовыми файлами, они получают расширение .au3 для того, чтобы легче было отличить простой текстовый файл от скрипта. Если использовался полный вариант установки — можно запускать скрипты просто двойным щелчком. Кроме этого, будут добавлены некоторые дополнительные команды в контекстное меню для файлов .au3.

Вот пример скрипта:

; Это мой первый скрипт. Обратите внимание, что ; используется ; для комментариев (как REM в пакетных файлах DOS) MsgBox(0, «Мой первый скрипт!», «Здравствуй, Мир!»)

Скрипты посложнее, как правило, используют Параметры командной строки (Command Line Parameters, CMD) [ ]

Специальный массив $CmdLine содержит параметры командной строки, переданные скрипту AutoIt при запуске. При этом имя файла скрипта не попадает в этот массив. Используйте AutoIt3.exe myscript.au3 param1 «this is another param»

В дополнение к $CmdLine существует переменная $CmdLineRaw, которая содержит параметры командной строки в исходном виде. Пример:
$CmdLineRaw равно. myscript.au3 param1 «this is another param»

Скомпилированный скрипт принимает параметры точно так же:

myscript.exe param1 «this is another param»

$CmdLineRaw равно. param1 «this is another param»

Обратите внимание, что $CmdLineRaw для нескомпилированных скриптов возвращает также и имя скрипта и параметры /ErrorStdOut, /AutoIt3ExecuteScript, если они есть.

Замечание: массив $CmdLine[. ] может вернуть не более 63 параметров, а $CmdLineRaw всегда возвращает полную строку параметров.

Специальные ключи командной строки AutoIt (Command Line Switches) [ ]

Форма1: AutoIt3.exe [/ErrorStdOut] [/AutoIt3ExecuteScript] file [params . ]
Выполнить файл скрипта AutoIt3

/ErrorStdOut позволяет перенаправить все фатальные ошибки на стандартное устройство вывода (StdOut), которое можно перенаправить в приложения, например, редактор SciTe. Этот ключ можно использовать и при запуске скомпилированных скриптов.
Чтобы просто запустить скрипт AutoIt с именем ‘myscript.au3’, используйте:
‘AutoIt3.exe myscript.au3’

Форма2: Compiled.exe [/ErrorStdOut] [params . ]
Выполнить скомпилированный скрипт, созданный с помощью Aut2Exe.

Форма3: Compiled.exe [/ErrorStdOut] [/AutoIt3ExecuteScript file] [params . ]
Выполнить нескомпилированный скрипт с помощью ранее скомпилированного скрипта. Соответственно, нет необходимости включать файл AutoIT3.exe в скомпилированный скрипт, если необходимо также сохранить возможность запускать нескомпилированные скрипты.

Форма4: AutoIt3.exe [/ErrorStdOut] /AutoIt3ExecuteLine «command line»
Выполнить одну строчку кода.

Иконка AutoIt не отображается в трее при использовании /AutoIt3ExecuteLine

Замечание: Правильное использование одиночных и двойных кавычек очень важно, равно как и двойных одиночных.

Форма3 и Форма4 могут быть отключены в скомпилированных скриптах при использовании директивы #NoAutoIt3Execute.

Источник: autoit.fandom.com

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru