Hi epvp!
Wie im AutoIt Tratsch Thread schon beschrieben, möchte ich mit AutoIt eine größere Anzahl an IPs (Proxyserver) anpingen und das möglichst schnell.
Egal ob ich nun mehrere Autoit Scripte laufen habe, die [Only registered and activated users can see links. Click Here To Register...] ausführen, oder ob ich das via CMD.exe ping > file.txt mache, es bleibt immer ein Problem: 90%+ der Proxy Server sind nicht erreichbar. Wenn ich aber immer nur einen Ping Befehl nacheinander ausführe (For Schleife Array), dann funktionieren wesentlich mehr Proxys. Nur dauert das anpingen dann auch dementsprechend länger :(
Hat jemand eine Idee, an was das liegt und wie ich möglichst schnell viele IPs gleichzeitig anpingen kann?
Ziel ist, meine Proxyliste schneller aktualisieren zu können: [Only registered and activated users can see links. Click Here To Register...]
MfG
Wie im AutoIt Tratsch Thread schon beschrieben, möchte ich mit AutoIt eine größere Anzahl an IPs (Proxyserver) anpingen und das möglichst schnell.
Code:
Func _Ping($sIP, $iTimeout = 5096)
Local Const $iThreads = 300
Local $aProcessList = ProcessList('cmd.exe')
If $aProcessList[0][0] >= $iThreads Then
Do
Sleep(100)
$aProcessList = ProcessList('cmd.exe')
Until $aProcessList[0][0] <= $iThreads
EndIf
Local $sCommand = '1>> "' & $sIP & '.txt" ping ' & $sIP & ' /n 1 /w ' & $iTimeout
ShellExecute(@ComSpec, " /C " & $sCommand, @TempDir, 'open', @SW_HIDE)
Return '%PING%' & $sIP & '%PING%'
EndFunc ;==>_Ping
Func _PingResult($sIP)
Local $sResult = FileRead(@TempDir & '\' & $sIP & '.txt')
Local $aRegExp = StringRegExp($sResult, 'Mittelwert = (\d+)ms', 3)
FileDelete(@TempDir & '\' & $sIP & '.txt')
If IsArray($aRegExp) Then Return $aRegExp[0]
Return 'Timeout'
EndFunc ;==>_PingResult
Hat jemand eine Idee, an was das liegt und wie ich möglichst schnell viele IPs gleichzeitig anpingen kann?
Ziel ist, meine Proxyliste schneller aktualisieren zu können: [Only registered and activated users can see links. Click Here To Register...]
MfG