Что нового

[Автоматизация] повтор всего скрипта N-ное колличество раз

Шурик

Новичок
Сообщения
17
Репутация
1
есть к примеру несколько функций.
1 - прыгнуть 5 раз , 2 - присесть 3 раза , крикнуть 4 раза. пытаюсь зделать чтоб они повторялись через определённое время и заданное колличество раз. т.е. попрыгал, поприседал, покричал и начал заного всё делать. for to next прикрутить не получается. вся загвоздка в input13 . input14 . input15. кому не сложно посмотрите на примере. прозьба сильно не сокращать, мне как новичку так легче понимать. не могу добавить сколько раз повторить скрипт ($Input13) , через какое время начать повторять ($Input14) , и вывести колличество выполненных повторов ($Input15).
Код:
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 427, 156, -1, -1)
$Label1 = GUICtrlCreateLabel("запрос", 8, 8, 192, 17, $SS_CENTER)
$Label2 = GUICtrlCreateLabel("повтор", 208, 8, 68, 17, $SS_CENTER)
$Label3 = GUICtrlCreateLabel("пауза", 280, 8, 65, 17, $SS_CENTER)
$Label4 = GUICtrlCreateLabel("счетчик", 352, 8, 67, 17, $SS_CENTER)
   ; запрос 1
$Input1 = GUICtrlCreateInput("a=1&b=2", 9, 24, 191, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; запрос
$Input2 = GUICtrlCreateInput("2", 208, 24, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; повтор
Global $Input3 = GUICtrlCreateInput("3", 280, 24, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; пауза
$Input4 = GUICtrlCreateInput("0", 352, 24, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER,$ES_READONLY)) ; счётчик
GUICtrlSetColor(-1, 0xFF0000)
   ; запрос 2
$Input5 = GUICtrlCreateInput("c=3&d=4", 9, 56, 191, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; запрос
$Input6 = GUICtrlCreateInput("2", 208, 56, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; повтор
Global $Input7 = GUICtrlCreateInput("3", 280, 56, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; пауза
$Input8 = GUICtrlCreateInput("0", 352, 56, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER,$ES_READONLY)) ; счётчик
GUICtrlSetColor(-1, 0xFF0000)
   ; запрос 3
$Input9 = GUICtrlCreateInput("z=5&x=6", 9, 88, 191, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; запрос
$Input10 = GUICtrlCreateInput("2", 208, 88, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; повтор
Global $Input11 = GUICtrlCreateInput("3", 280, 88, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; пауза
$Input12 = GUICtrlCreateInput("0", 352, 88, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER,$ES_READONLY)) ; счётчик
GUICtrlSetColor(-1, 0xFF0000)
   ; общий
$Button1 = GUICtrlCreateButton("выполнить", 8, 120, 195, 25)
Global $Input13 = GUICtrlCreateInput("2", 208, 120, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; сколько раз повторить
Global $Input14 = GUICtrlCreateInput("20", 280, 120, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; пауза после выполнения 3-х циклов
$Input15 = GUICtrlCreateInput("0", 352, 120, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER,$ES_READONLY)) ; сколько раз повторили по кругу...
GUICtrlSetColor(-1, 0xFF0000)
   ; паузы
Global $Delay1 = GUICtrlRead($Input3) ; пауза между повторами 1 запроса
Global $Delay2 = GUICtrlRead($Input7) ; пауза между повторами 2 запроса
Global $Delay3 = GUICtrlRead($Input11) ; пауза между повторами 3 запроса
Global $Delay0 = GUICtrlRead($Input14) ; пауза до начала нового старта
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1

	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit
		Case $Button1
            $x1 = GUICtrlRead($Input2)
			$x2 = GUICtrlRead($Input6)
			$x3 = GUICtrlRead($Input10)
 			Zap1($x1)
			Sleep (30)
			Zap2($x2)
			Sleep (30)
			Zap3($x3)
			Sleep (30)
		EndSwitch
WEnd

 Func Zap1($x1)
	 ; колличество повторов
	 $a1 = GuiCtrlRead($input1)
	 For $z1 = 1 To $x1
		 ; пауза между запросами
		 Global $Delay1 = GUICtrlRead($Input3)
		 Sleep($Delay1*100)
		 ; отправка запроса
$Data = BinaryToString(InetRead("http://93.158.134.3/xxx/Info?1=Info&" & $a1, 1))
    ; выводит сколько раз сделал
	If Not @extended Then
			$z1 += 0
			GUICtrlSetData($input4,$z1)
	EndIf
    Next
EndFunc

 Func Zap2($x2)
	 ; колличество повторов
	 $a2 = GuiCtrlRead($input5)
	 For $z2 = 1 To $x2
		 ; пауза между запросами
		 Global $Delay2 = GUICtrlRead($Input7)
		 Sleep($Delay2*100)
		 ; отправка запроса
$Data = BinaryToString(InetRead("http://93.158.134.3/xxx/Info?1=Info&" & $a2, 1))
    ; выводит сколько раз сделал
	If Not @extended Then
			$z2 += 0
			GUICtrlSetData($input8,$z2)
	EndIf
    Next
EndFunc

  Func Zap3($x3)
	  ; колличество повторов
	 $a3 = GuiCtrlRead($input9)
	 For $z3= 1 To $x3
		 ; пауза между запросами
		 Global $Delay3 = GUICtrlRead($Input11)
		 Sleep($Delay3*100)
		 ; отправка запроса
$Data = BinaryToString(InetRead("http://93.158.134.3/xxx/Info?1=Info&" & $a3, 1))
    ; выводит сколько раз сделал
	If Not @extended Then
			$z3 += 0
			GUICtrlSetData($input12,$z3)
	EndIf
    Next
EndFunc
 

ra4o

AutoIT Гуру
Сообщения
1,165
Репутация
247
Можно так :
Код:
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 427, 156, -1, -1)
$Label1 = GUICtrlCreateLabel("запрос", 8, 8, 192, 17, $SS_CENTER)
$Label2 = GUICtrlCreateLabel("повтор", 208, 8, 68, 17, $SS_CENTER)
$Label3 = GUICtrlCreateLabel("пауза", 280, 8, 65, 17, $SS_CENTER)
$Label4 = GUICtrlCreateLabel("счетчик", 352, 8, 67, 17, $SS_CENTER)
   ; запрос 1
$Input1 = GUICtrlCreateInput("a=1&b=2", 9, 24, 191, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; запрос
$Input2 = GUICtrlCreateInput("2", 208, 24, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; повтор
Global $Input3 = GUICtrlCreateInput("3", 280, 24, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; пауза
$Input4 = GUICtrlCreateInput("0", 352, 24, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER,$ES_READONLY)) ; счётчик
GUICtrlSetColor(-1, 0xFF0000)
   ; запрос 2
$Input5 = GUICtrlCreateInput("c=3&d=4", 9, 56, 191, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; запрос
$Input6 = GUICtrlCreateInput("2", 208, 56, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; повтор
Global $Input7 = GUICtrlCreateInput("3", 280, 56, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; пауза
$Input8 = GUICtrlCreateInput("0", 352, 56, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER,$ES_READONLY)) ; счётчик
GUICtrlSetColor(-1, 0xFF0000)
   ; запрос 3
$Input9 = GUICtrlCreateInput("z=5&x=6", 9, 88, 191, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; запрос
$Input10 = GUICtrlCreateInput("2", 208, 88, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; повтор
Global $Input11 = GUICtrlCreateInput("3", 280, 88, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; пауза
$Input12 = GUICtrlCreateInput("0", 352, 88, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER,$ES_READONLY)) ; счётчик
GUICtrlSetColor(-1, 0xFF0000)
   ; общий
$Button1 = GUICtrlCreateButton("выполнить", 8, 120, 195, 25)
Global $Input13 = GUICtrlCreateInput("2", 208, 120, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; сколько раз повторить
Global $Input14 = GUICtrlCreateInput("20", 280, 120, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; пауза после выполнения 3-х циклов
$Input15 = GUICtrlCreateInput("0", 352, 120, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER,$ES_READONLY)) ; сколько раз повторили по кругу...
GUICtrlSetColor(-1, 0xFF0000)

GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1

    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit
        Case $Button1
			;Обнуление всех счётчиков, если запуск повторный
			GuiCtrlSetData($Input4,0)
			GuiCtrlSetData($Input8,0)
			GuiCtrlSetData($Input12,0)
			GuiCtrlSetData($Input15,0)

            $x1 = GUICtrlRead($Input2);Повтор Zap1
            $x2 = GUICtrlRead($Input6);Повтор Zap2
            $x3 = GUICtrlRead($Input10);Повтор Zap3
			$x4 =GUICtrlRead($Input13);сколько раз повторть по кругу..

			   ; паузы
            Global $Delay1 = GUICtrlRead($Input3) ; пауза между повторами 1 запроса
            Global $Delay2 = GUICtrlRead($Input7) ; пауза между повторами 2 запроса
            Global $Delay3 = GUICtrlRead($Input11) ; пауза между повторами 3 запроса
            Global $Delay0 = GUICtrlRead($Input14) ; пауза до начала нового старта


               For $i = 1 To $x4 ; Повтор всех запросов
                  Zap($input1,$x1,$Delay1,$input4)
                  Sleep(30)
				  Zap($input5,$x2,$Delay2,$input8)
				  Sleep(30)
                  Zap($input9,$x3,$Delay3,$input12)

				  GUICtrlSetData($Input15,$i)
				 If $i < $x4 Then Sleep($Delay0*1000); пауза до начала нового старта , если цикл не последний
			   Next; => Повтор всех запросов

        EndSwitch
WEnd



 Func Zap($Zapros,$Num,$Delay,$Out)

$n = 0 ;Количество выполненых запросов
$Text = GuiCtrlRead($Zapros)

For $y = 1 To $Num ;Повтор запроса

	$Data = BinaryToString(InetRead("http://93.158.134.3/xxx/Info?1=Info&" & $Text, 1))
	 If Not @extended Then
		$n+=1
		GUICtrlSetData($Out,$n)
	 EndIf
if $y < $Num Then Sleep($Delay*1000); пауза до начала нового цикла , если цикл не последний
Next ; => Повтор запроса

EndFunc
 
Автор
Ш

Шурик

Новичок
Сообщения
17
Репутация
1
ra4o сказал(а):
Можно так :
Код:
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 427, 156, -1, -1)
$Label1 = GUICtrlCreateLabel("запрос", 8, 8, 192, 17, $SS_CENTER)
$Label2 = GUICtrlCreateLabel("повтор", 208, 8, 68, 17, $SS_CENTER)
$Label3 = GUICtrlCreateLabel("пауза", 280, 8, 65, 17, $SS_CENTER)
$Label4 = GUICtrlCreateLabel("счетчик", 352, 8, 67, 17, $SS_CENTER)
   ; запрос 1
$Input1 = GUICtrlCreateInput("a=1&b=2", 9, 24, 191, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; запрос
$Input2 = GUICtrlCreateInput("2", 208, 24, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; повтор
Global $Input3 = GUICtrlCreateInput("3", 280, 24, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; пауза
$Input4 = GUICtrlCreateInput("0", 352, 24, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER,$ES_READONLY)) ; счётчик
GUICtrlSetColor(-1, 0xFF0000)
   ; запрос 2
$Input5 = GUICtrlCreateInput("c=3&d=4", 9, 56, 191, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; запрос
$Input6 = GUICtrlCreateInput("2", 208, 56, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; повтор
Global $Input7 = GUICtrlCreateInput("3", 280, 56, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; пауза
$Input8 = GUICtrlCreateInput("0", 352, 56, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER,$ES_READONLY)) ; счётчик
GUICtrlSetColor(-1, 0xFF0000)
   ; запрос 3
$Input9 = GUICtrlCreateInput("z=5&x=6", 9, 88, 191, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; запрос
$Input10 = GUICtrlCreateInput("2", 208, 88, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; повтор
Global $Input11 = GUICtrlCreateInput("3", 280, 88, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; пауза
$Input12 = GUICtrlCreateInput("0", 352, 88, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER,$ES_READONLY)) ; счётчик
GUICtrlSetColor(-1, 0xFF0000)
   ; общий
$Button1 = GUICtrlCreateButton("выполнить", 8, 120, 195, 25)
Global $Input13 = GUICtrlCreateInput("2", 208, 120, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; сколько раз повторить
Global $Input14 = GUICtrlCreateInput("20", 280, 120, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; пауза после выполнения 3-х циклов
$Input15 = GUICtrlCreateInput("0", 352, 120, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER,$ES_READONLY)) ; сколько раз повторили по кругу...
GUICtrlSetColor(-1, 0xFF0000)

GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1

    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit
        Case $Button1
			;Обнуление всех счётчиков, если запуск повторный
			GuiCtrlSetData($Input4,0)
			GuiCtrlSetData($Input8,0)
			GuiCtrlSetData($Input12,0)
			GuiCtrlSetData($Input15,0)

            $x1 = GUICtrlRead($Input2);Повтор Zap1
            $x2 = GUICtrlRead($Input6);Повтор Zap2
            $x3 = GUICtrlRead($Input10);Повтор Zap3
			$x4 =GUICtrlRead($Input13);сколько раз повторть по кругу..

			   ; паузы
            Global $Delay1 = GUICtrlRead($Input3) ; пауза между повторами 1 запроса
            Global $Delay2 = GUICtrlRead($Input7) ; пауза между повторами 2 запроса
            Global $Delay3 = GUICtrlRead($Input11) ; пауза между повторами 3 запроса
            Global $Delay0 = GUICtrlRead($Input14) ; пауза до начала нового старта


               For $i = 1 To $x4 ; Повтор всех запросов
                  Zap($input1,$x1,$Delay1,$input4)
                  Sleep(30)
				  Zap($input5,$x2,$Delay2,$input8)
				  Sleep(30)
                  Zap($input9,$x3,$Delay3,$input12)

				  GUICtrlSetData($Input15,$i)
				 If $i < $x4 Sleep($Delay0*1000); пауза до начала нового старта , если цикл не последний
			   Next; => Повтор всех запросов

        EndSwitch
WEnd



 Func Zap($Zapros,$Num,$Delay,$Out)

$n = 0 ;Количество выполненых запросов
$Text = GuiCtrlRead($Zapros)

For $y = 1 To $Num ;Повтор запроса

	$Data = BinaryToString(InetRead("http://93.158.134.3/xxx/Info?1=Info&" & $Text, 1))
	 If Not @extended Then
		$n+=1
		GUICtrlSetData($Out,$n)
	 EndIf
if $y < $Num Sleep($Delay*1000); пауза до начала нового цикла , если цикл не последний
Next ; => Повтор запроса

EndFunc

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

ra4o

AutoIT Гуру
Сообщения
1,165
Репутация
247
На что ругается ?
желательно для каждого запроса своя функция.
Продублируйте функции, назовите их по-разному...
Например так :
Код:
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 427, 156, -1, -1)
$Label1 = GUICtrlCreateLabel("запрос", 8, 8, 192, 17, $SS_CENTER)
$Label2 = GUICtrlCreateLabel("повтор", 208, 8, 68, 17, $SS_CENTER)
$Label3 = GUICtrlCreateLabel("пауза", 280, 8, 65, 17, $SS_CENTER)
$Label4 = GUICtrlCreateLabel("счетчик", 352, 8, 67, 17, $SS_CENTER)
   ; запрос 1
$Input1 = GUICtrlCreateInput("a=1&b=2", 9, 24, 191, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; запрос
$Input2 = GUICtrlCreateInput("2", 208, 24, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; повтор
Global $Input3 = GUICtrlCreateInput("3", 280, 24, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; пауза
$Input4 = GUICtrlCreateInput("0", 352, 24, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER,$ES_READONLY)) ; счётчик
GUICtrlSetColor(-1, 0xFF0000)
   ; запрос 2
$Input5 = GUICtrlCreateInput("c=3&d=4", 9, 56, 191, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; запрос
$Input6 = GUICtrlCreateInput("2", 208, 56, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; повтор
Global $Input7 = GUICtrlCreateInput("3", 280, 56, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; пауза
$Input8 = GUICtrlCreateInput("0", 352, 56, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER,$ES_READONLY)) ; счётчик
GUICtrlSetColor(-1, 0xFF0000)
   ; запрос 3
$Input9 = GUICtrlCreateInput("z=5&x=6", 9, 88, 191, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; запрос
$Input10 = GUICtrlCreateInput("2", 208, 88, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; повтор
Global $Input11 = GUICtrlCreateInput("3", 280, 88, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; пауза
$Input12 = GUICtrlCreateInput("0", 352, 88, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER,$ES_READONLY)) ; счётчик
GUICtrlSetColor(-1, 0xFF0000)
   ; общий
$Button1 = GUICtrlCreateButton("выполнить", 8, 120, 195, 25)
Global $Input13 = GUICtrlCreateInput("2", 208, 120, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; сколько раз повторить
Global $Input14 = GUICtrlCreateInput("20", 280, 120, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; пауза после выполнения 3-х циклов
$Input15 = GUICtrlCreateInput("0", 352, 120, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER,$ES_READONLY)) ; сколько раз повторили по кругу...
GUICtrlSetColor(-1, 0xFF0000)

GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1

    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit
        Case $Button1
            ;Обнуление всех счётчиков, если запуск повторный
            GuiCtrlSetData($Input4,0)
            GuiCtrlSetData($Input8,0)
            GuiCtrlSetData($Input12,0)
            GuiCtrlSetData($Input15,0)

            $x1 = GUICtrlRead($Input2);Повтор Zap1
            $x2 = GUICtrlRead($Input6);Повтор Zap2
            $x3 = GUICtrlRead($Input10);Повтор Zap3
            $x4 =GUICtrlRead($Input13);сколько раз повторть по кругу..

               ; паузы
            Global $Delay1 = GUICtrlRead($Input3) ; пауза между повторами 1 запроса
            Global $Delay2 = GUICtrlRead($Input7) ; пауза между повторами 2 запроса
            Global $Delay3 = GUICtrlRead($Input11) ; пауза между повторами 3 запроса
            Global $Delay0 = GUICtrlRead($Input14) ; пауза до начала нового старта


               For $i = 1 To $x4 ; Повтор всех запросов
                  Zap1()
                  Sleep(30)
                  Zap2()
                  Sleep(30)
                  Zap3()

                  GUICtrlSetData($Input15,$i)
                 If $i < $x4 Then Sleep($Delay0*1000); пауза до начала нового старта , если цикл не последний
               Next; => Повтор всех запросов

        EndSwitch
WEnd



 Func Zap1()

$n = 0 ;Количество выполненых запросов
$Text = GuiCtrlRead($input1)

For $y = 1 To $x1 ;Повтор запроса

    $Data = BinaryToString(InetRead("http://93.158.134.3/xxx/Info?1=Info&" & $Text, 1))
     If Not @extended Then
        $n+=1
        GUICtrlSetData($input4,$n)
     EndIf
if $y < $x1 Then Sleep($Delay1*1000); пауза до начала нового цикла , если цикл не последний
Next ; => Повтор запроса

 EndFunc

  Func Zap2()

$n = 0 ;Количество выполненых запросов
$Text = GuiCtrlRead($input5)

For $y = 1 To $x2 ;Повтор запроса

    $Data = BinaryToString(InetRead("http://93.158.134.3/xxx/Info?1=Info&" & $Text, 1))
     If Not @extended Then
        $n+=1
        GUICtrlSetData($input8,$n)
     EndIf
if $y < $x2 Then Sleep($Delay2*1000); пауза до начала нового цикла , если цикл не последний
Next ; => Повтор запроса

  EndFunc

   Func Zap3()

$n = 0 ;Количество выполненых запросов
$Text = GuiCtrlRead($input9)

For $y = 1 To $x3 ;Повтор запроса

    $Data = BinaryToString(InetRead("http://93.158.134.3/xxx/Info?1=Info&" & $Text, 1))
     If Not @extended Then
        $n+=1
        GUICtrlSetData($input12,$n)
     EndIf
if $y < $x3 Then Sleep($Delay3*1000); пауза до начала нового цикла , если цикл не последний
Next ; => Повтор запроса

EndFunc
И со счетом как? считать количество повторов в цикле или всего с запуска скрипта ?
 
Автор
Ш

Шурик

Новичок
Сообщения
17
Репутация
1
ra4o сказал(а):
На что ругается ?
желательно для каждого запроса своя функция.
Продублируйте функции, назовите их по-разному...
Например так :
Код:
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 427, 156, -1, -1)
$Label1 = GUICtrlCreateLabel("запрос", 8, 8, 192, 17, $SS_CENTER)
$Label2 = GUICtrlCreateLabel("повтор", 208, 8, 68, 17, $SS_CENTER)
$Label3 = GUICtrlCreateLabel("пауза", 280, 8, 65, 17, $SS_CENTER)
$Label4 = GUICtrlCreateLabel("счетчик", 352, 8, 67, 17, $SS_CENTER)
   ; запрос 1
$Input1 = GUICtrlCreateInput("a=1&b=2", 9, 24, 191, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; запрос
$Input2 = GUICtrlCreateInput("2", 208, 24, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; повтор
Global $Input3 = GUICtrlCreateInput("3", 280, 24, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; пауза
$Input4 = GUICtrlCreateInput("0", 352, 24, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER,$ES_READONLY)) ; счётчик
GUICtrlSetColor(-1, 0xFF0000)
   ; запрос 2
$Input5 = GUICtrlCreateInput("c=3&d=4", 9, 56, 191, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; запрос
$Input6 = GUICtrlCreateInput("2", 208, 56, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; повтор
Global $Input7 = GUICtrlCreateInput("3", 280, 56, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; пауза
$Input8 = GUICtrlCreateInput("0", 352, 56, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER,$ES_READONLY)) ; счётчик
GUICtrlSetColor(-1, 0xFF0000)
   ; запрос 3
$Input9 = GUICtrlCreateInput("z=5&x=6", 9, 88, 191, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; запрос
$Input10 = GUICtrlCreateInput("2", 208, 88, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; повтор
Global $Input11 = GUICtrlCreateInput("3", 280, 88, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; пауза
$Input12 = GUICtrlCreateInput("0", 352, 88, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER,$ES_READONLY)) ; счётчик
GUICtrlSetColor(-1, 0xFF0000)
   ; общий
$Button1 = GUICtrlCreateButton("выполнить", 8, 120, 195, 25)
Global $Input13 = GUICtrlCreateInput("2", 208, 120, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; сколько раз повторить
Global $Input14 = GUICtrlCreateInput("20", 280, 120, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER)) ; пауза после выполнения 3-х циклов
$Input15 = GUICtrlCreateInput("0", 352, 120, 65, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER,$ES_READONLY)) ; сколько раз повторили по кругу...
GUICtrlSetColor(-1, 0xFF0000)

GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1

    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit
        Case $Button1
            ;Обнуление всех счётчиков, если запуск повторный
            GuiCtrlSetData($Input4,0)
            GuiCtrlSetData($Input8,0)
            GuiCtrlSetData($Input12,0)
            GuiCtrlSetData($Input15,0)

            $x1 = GUICtrlRead($Input2);Повтор Zap1
            $x2 = GUICtrlRead($Input6);Повтор Zap2
            $x3 = GUICtrlRead($Input10);Повтор Zap3
            $x4 =GUICtrlRead($Input13);сколько раз повторть по кругу..

               ; паузы
            Global $Delay1 = GUICtrlRead($Input3) ; пауза между повторами 1 запроса
            Global $Delay2 = GUICtrlRead($Input7) ; пауза между повторами 2 запроса
            Global $Delay3 = GUICtrlRead($Input11) ; пауза между повторами 3 запроса
            Global $Delay0 = GUICtrlRead($Input14) ; пауза до начала нового старта


               For $i = 1 To $x4 ; Повтор всех запросов
                  Zap1()
                  Sleep(30)
                  Zap2()
                  Sleep(30)
                  Zap3()

                  GUICtrlSetData($Input15,$i)
                 If $i < $x4 Then Sleep($Delay0*1000); пауза до начала нового старта , если цикл не последний
               Next; => Повтор всех запросов

        EndSwitch
WEnd



 Func Zap1()

$n = 0 ;Количество выполненых запросов
$Text = GuiCtrlRead($input1)

For $y = 1 To $x1 ;Повтор запроса

    $Data = BinaryToString(InetRead("http://93.158.134.3/xxx/Info?1=Info&" & $Text, 1))
     If Not @extended Then
        $n+=1
        GUICtrlSetData($input4,$n)
     EndIf
if $y < $x1 Then Sleep($Delay1*1000); пауза до начала нового цикла , если цикл не последний
Next ; => Повтор запроса

 EndFunc

  Func Zap2()

$n = 0 ;Количество выполненых запросов
$Text = GuiCtrlRead($input5)

For $y = 1 To $x2 ;Повтор запроса

    $Data = BinaryToString(InetRead("http://93.158.134.3/xxx/Info?1=Info&" & $Text, 1))
     If Not @extended Then
        $n+=1
        GUICtrlSetData($input8,$n)
     EndIf
if $y < $x2 Then Sleep($Delay2*1000); пауза до начала нового цикла , если цикл не последний
Next ; => Повтор запроса

  EndFunc

   Func Zap3()

$n = 0 ;Количество выполненых запросов
$Text = GuiCtrlRead($input9)

For $y = 1 To $x3 ;Повтор запроса

    $Data = BinaryToString(InetRead("http://93.158.134.3/xxx/Info?1=Info&" & $Text, 1))
     If Not @extended Then
        $n+=1
        GUICtrlSetData($input12,$n)
     EndIf
if $y < $x3 Then Sleep($Delay3*1000); пауза до начала нового цикла , если цикл не последний
Next ; => Повтор запроса

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