Что нового

[Ошибки] неизвестная ошибка

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

andreitrane

Новичок
Сообщения
141
Репутация
3
у меня непонятная проблема...
программа работает хорошо, но как только $iaftch = 90, то есть $kaftch = 15 (потому что $server[0] всегда = 6), то вылетает ошибка в строке
Код:
$iserv = $server[$aftchdum]
$iserv = ^ERROR

Error: Array varable has incorrect number of subscripts or subscript dimension range exceeded.

уже второй день мучаюсь и никак не могу найти место ошибки....
помогите пожалуйста
Код:
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <ProgressConstants.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ###
$aftcheckform = GUICreate("Чекер авторитета v1.2", 531, 428, 514, 111)
$startaftch = GUICtrlCreateButton("Начать", 8, 0, 73, 25)
$aftchProgress = GUICtrlCreateProgress(168, 0, 361, 25)
$chaftinput = GUICtrlCreateInput("3000", 88, 8, 73, 21)
$Group1 = GUICtrlCreateGroup("Фейки", 0, 24, 289, 201)
$aftfakeEdit = GUICtrlCreateEdit("", 8, 40, 273, 177, BitOR($ES_AUTOVSCROLL,$ES_AUTOHSCROLL,$ES_WANTRETURN,$WS_VSCROLL))
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Group2 = GUICtrlCreateGroup("", 0, 224, 289, 201)
$chaftfakeEdit = GUICtrlCreateEdit("", 8, 240, 273, 177, BitOR($ES_AUTOVSCROLL,$ES_AUTOHSCROLL,$ES_WANTRETURN,$WS_VSCROLL))
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Group3 = GUICtrlCreateGroup("Авторитет", 296, 24, 233, 401)
$aftfakeoutEdit = GUICtrlCreateEdit("", 304, 40, 217, 377, BitOR($ES_AUTOVSCROLL,$ES_AUTOHSCROLL,$ES_WANTRETURN,$WS_VSCROLL))
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###


Global $server = stringsplit("188.93.20.139,109.234.155.196,109.234.155.197,109.234.155.198,109.234.156.250,109.234.156.251", ",")
Global $oIEErrorHandler = ObjEvent("AutoIt.Error","ComErrFunc")

While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit
		case $startaftch
			GUICtrlSetData($Group2, "Более "& GUICtrlRead($chaftinput) &" авторитета")
			_fromfile()

	EndSwitch
WEnd


Func ComErrFunc() ; система пропуска ошибок
         If IsObj($oIEErrorHandler) Then
         $HexNumber = Hex($oIEErrorHandler.number, 8)
         if $HexNumber=00000000 then Return 0
         SetError($HexNumber)
         Return 1
		 EndIf
		 Return 0
	 EndFunc

	 Func _fromfile()
		$aftchtext = FileOpenDialog("Указать файл с фейками", @WorkingDir & "", "Любой (*.txt)", 1 + 4 )
        Global $Readaftch = FileRead($aftchtext)
		if $Readaftch Then
        GUICtrlSetData($aftfakeEdit,$Readaftch)
			_startaftch()
	Else
		MsgBox(0, "Чекер авторитета фейков", "ВЫБЕРИТЕ ФАЙЛ С ФЕЙКАМИ!!!!")
		EndIf
	EndFunc

	 Func _startaftch()
		 if StringInStr(StringStripCR(GUICtrlRead($aftfakeEdit)), @LF) Then
			 $aftchfake = StringSplit(StringStripCR(GUICtrlRead($aftfakeEdit)), @LF)
			 $iaftch = 1
			 $kaftch = 1
			 $aftchdum = 1
			 For $iaftch = 1 to $aftchfake[0]
			 if StringInStr($aftchfake[$iaftch], ":") Then
				 $aftchfakeid = StringSplit($aftchfake[$iaftch], ":")
				 if $iaftch = $kaftch*$server[0] Then
					 $aftchdum = 1
					 $kaftch += 1
				 EndIf
				 $iserv = $server[$aftchdum]

				 $URL = "http://"& $iserv &"/prison/universal.php?getInfo"
            $PostData = "key="& $aftchfakeid[2] &"&user="& $aftchfakeid[1] &"&method=getInfo"
            $oHTTP = ObjCreate("WinHttp.WinHttpRequest.5.1")
            $oHTTP.Open("POST", $URL)
            $oHTTP.SetRequestHeader("Content-Type","application/x-www-form-urlencoded")
            Execute('$oHTTP.Send($PostData)')
            $oHTTP.WaitForResponse
            $Response = $oHTTP.ResponseText
			$aftchfakeerr = $oIEErrorHandler
			$skorchaft = StringRegExpReplace($Response, '(?s).*?<rating>(\d+)</rating>?.*', '\1')

			if @extended <> 1 or not $skorchaft Then
			ElseIf Number(GUICtrlRead($chaftinput)) < Number($skorchaft) then
			GUICtrlSetData($chaftfakeEdit, $aftchfake[$iaftch]& @CRLF, @CRLF)
			EndIf
			GUICtrlSetData($aftfakeoutEdit, "id"& $aftchfakeid[1] &" - "& $skorchaft &@CRLF, @CRLF)

			 EndIf
			 GUICtrlSetData($aftchProgress, Round($iaftch*(100/$aftchfake[0])))
				 $aftchdum += 1
				 Sleep(100)
			 Next
		 EndIf
		 MsgBox(0, "Чекер авторитета", "готово")
			 EndFunc
 
Статус
Закрыто для дальнейших ответов.
Верх