Что нового

Variable used without being declared

Статус
Закрыто для дальнейших ответов.

RedShade

Новичок
Сообщения
12
Репутация
0
Помогите найти ошибку. Variable used without being declared. Заранее спасибо
Код:
Include <WinAPIEx.au3>
$sProg = "downloader.Exe"
$sTitl = "0"
Run("Downloader.exe")
Do
$sTitl = _WinGetForProc ($sProg)
Until $sTitl<>"0"
Func _WinGetForProc ($sProcName)
$alist = ProcessList($sProcName)
For $i = 1 to $alist[0][0]
  $iProcPid = $alist[$i][1]
Next
$aData = _WinAPI_EnumProcessWindows($iProcPid, 1)
$iWin = $aData [1][0]
$sTitl = WinGetTitle( $iWin )
Return $sTitl
EndFunc

Do
sleep(1000)
$fVisible = ControlCommand ( $sTitl, "",'[CLASS:Button; INSTANCE:1]', "IsVisible" )
If $fVisible = "1" Then
	WinActivate($sTitl,"")
	ControlClick($sTitl, "", "Button1")
EndIf
Until $fVisible = "0"
 

C2H5OH

AutoIT Гуру
Сообщения
1,473
Репутация
333
Что ж непонятно?
Код:
For $i = 1 to $alist[0][0]
  $iProcPid = $alist[$i][1]
Next

В цикл ты не заходишь, так как процессов с таким именем у тебя 0.
Поэтому ID процесса остаётся неопределённым.
И тут ты к нему берёшь и обращаешься...
:wall_brake:
 

AZJIO

Меценат
Меценат
Сообщения
2,879
Репутация
1,194
RedShade
Зачем такие заморочки если Run возвращает PID?
Зачем крутить цикл если в переменную на выходе суётся последнее значение массива? Проще просто взять последнее значение массива, без прокрутки цикла. В по факту Run возвращает.
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8,671
Репутация
2,481
RedShade

Предупреждение За нарушение правил форума (пункт Б.5):
Имя темы должно нести смысловую нагрузку (отражать суть вопроса/проблемы)
Правильно сформулированное название темы привлекает больше внимания, и шансы получить конкретный ответ увеличиваются.


Данные правила могут пополняться локальными правилами раздела.
Как правильно называть темы

"Variable used without being declared" - это неприемлемое название темы, переименуйте тему иначе она будет закрыта, а вам возможно будет выдан бан на несколько дней.

С уважением, ваш Администратор.
 
Статус
Закрыто для дальнейших ответов.
Верх