G
GenoTIP
Гость
Почему-то при любом правильном и не правильном прокси в первой строке текстового файла всегда выводится "Первая строка рабочая " подскажите где условие не правильное, что он не перебирает прокси.. а пробует только ту, что первая. Причем прокси так и не ставиться - в реестр забивается, а толку 0, до этого использовал эту же функцию установки прокси иначе и все было ок.
Код:
#RequireAdmin
#include <file.au3>
#include <array.au3>
#include <ie.au3>
;http://autoit-script.ru/index.php/topic,3214.0.html
OnAutoItExitRegister("_Exit")
_Save()
;загружаем прокси
Dim $aProxies
If Not _FileReadToArray(@ScriptDir & "\replacement.txt", $aProxies) Then
MsgBox(4096, "Error", " Error reading log to Array error:" & @error)
Exit
EndIf
$sURL = "http://www.admuncher.com/"
$i_Proxy = 1
$ok = 0
_ProxyChange($aProxies[$i_Proxy])
Sleep(500)
_GetHTML($sURL)
Func _GetHTML($sURL, $sSendParam = "")
$i_Proxy = 1
$ok = 0
Local $oHTTP = ObjCreate("WinHttp.WinHttpRequest.5.1")
$oHTTP.Open("GET", $sURL)
$oHTTP.SetRequestHeader("Content-Type", "text/html")
$oHTTP.SetRequestHeader("Accept", "image/gif, image/jpeg, image/pjpeg, image/pjpeg, application/x-shockwave-flash, application/x-ms-application, application/x-ms-xbap, application/vnd.ms-xpsdocument, application/xaml+xml, application/vnd.ms-excel, application/msword, */*")
$oHTTP.SetRequestHeader("User-Agent", "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)")
$oHTTP.SetRequestHeader("Host", "www.admuncher.com")
$oHTTP.SetRequestHeader("Accept-Language", "ru")
$oHTTP.Send
If (@error) Or ($oHTTP.Status <> 200) Then
While $ok <> 1
$i_Proxy += 1
_ProxyChange($aProxies[$i_Proxy])
Local $oHTTP = ObjCreate("WinHttp.WinHttpRequest.5.1")
$oHTTP.Open("GET", $sURL)
$oHTTP.SetRequestHeader("Content-Type", "text/html")
$oHTTP.SetRequestHeader("Accept", "image/gif, image/jpeg, image/pjpeg, image/pjpeg, application/x-shockwave-flash, application/x-ms-application, application/x-ms-xbap, application/vnd.ms-xpsdocument, application/xaml+xml, application/vnd.ms-excel, application/msword, */*")
$oHTTP.SetRequestHeader("User-Agent", "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)")
$oHTTP.SetRequestHeader("Host", "www.admuncher.com")
$oHTTP.SetRequestHeader("Accept-Language", "ru")
$oHTTP.Send
If (not @error) Then
ConsoleWrite($aProxies[$i_Proxy] & @LF)
$ok = 1
EndIf
Sleep(200)
WEnd
MsgBox(0, '', 'Error!')
Return SetError(1, 0, '')
Else
ConsoleWrite('Первая строка рабочая ' & $aProxies[$i_Proxy] & @LF)
;Return $oHTTP.ResponseText
EndIf
EndFunc ;==>_GetHTML
Exit
;Меняем прокси
Func _ProxyChange($sProxy = '')
RegWrite("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings", "ProxyServer", "REG_SZ", $sProxy)
EndFunc ;==>_ProxyChange
;Сохраняем значения прокси
Func _Save()
Global $sProxyEnable = RegRead("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings", "ProxyEnable")
Global $sProxyServer = RegRead("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings", "ProxyServer")
RegWrite("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings", "ProxyEnable", "REG_DWORD", 1)
EndFunc ;==>_Save
;Загружаем значения прокси
Func _Load()
RegWrite("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings", "ProxyEnable", "REG_DWORD", $sProxyEnable)
RegWrite("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings", "ProxyServer", "REG_SZ", $sProxyServer)
EndFunc ;==>_Load
;По выходу загружаем сохраненные настройки прокси
Func _Exit()
_Load()
MsgBox(0, 0, "Вышли из программы")
Exit
EndFunc ;==>_Exit