Ich wollte nenn Proxy Checker machen, der mit mehren Bots arbeitet.
Mehr Bots heißt auch das ich mit Prozeduren und Threats arbeiten muss.
Und auch noch nenn Timeout irgendwie basteln muss, aber das hat nicht priorität.
Ein anderes Prob habt Priorität.
Ich mach jetzt schon ewig dran rum, und weiss einfach nicht mehr weiter.
Hab schon zig Schlangen probiert, und möglichkeiten aber es will nicht.
Es geht darum, z.B hab ich ne Liste mit 4000 Proxys.
Und will sie mit 10 Bots gleichzeitig abarbeiten lassen.
Die Liste muss von oben nach unten abgearbeitet werden, kein Bot soll den Proxy von ndem anderen Bot testen, also erst anständige Verteilung.
Aber ich kriege das einfach nicht hin

hab jetzt mal hier ein Testsobjekt gebastelt.
Das wo die Bots nur die Proxys in die Gadget aufteilen sollen.
Und ich hab einfach keine Ahnung was ich noch machen kann, damit es sonst.
Code: Alles auswählen
Global NewList ProxyList.s()
Procedure Bot1 (index)
AddGadgetItem(778, -1, ProxyList.s())
;Ergebnis$ = GetGadgetItemText(41, index, Spalte)
;AddGadgetItem(778, -1, Ergebnis$)
EndProcedure
;Procedure Bot2 (index)
;AddGadgetItem(778, -1, ProxyList.s())
;EndProcedure
OpenWindow(0,0,0,800,700,"Bla",#PB_Window_SystemMenu|#PB_Window_MinimizeGadget|#PB_Window_ScreenCentered)
InitNetwork()
CreateGadgetList(WindowID(0))
PanelGadget(1, 0, 0, 800, 700)
AddGadgetItem (1,-1,"Panel 1")
ButtonGadget(10,20,20,100,20,"TEST")
ButtonGadget(11,120,20,100,20,"Open Proxy-List")
ListViewGadget(41, 390, 60, 370, 310);IP
ListViewGadget(42, 390, 380, 370, 290);PORT
ListViewGadget(778, 10,60, 370, 610);RESULT
Repeat
WaitWindowEvent = WaitWindowEvent()
EventGadget = EventGadget()
If WaitWindowEvent = #PB_Event_Gadget
If EventGadget = 10
max = CountList(ProxyList.s())
FirstElement(ProxyList.s())
;index = ListIndex(ProxyList.s())
Repeat
xxxx = xxxx +1
CreateThread(@Bot1(), index)
Debug index = ListIndex(ProxyList.s())
index = NextElement(ProxyList.s())
Until xxxx = max
EndIf
If EventGadget = 11
Tomate$ = OpenFileRequester("SELECT PROXY-LIST", "C:\*.txt", "TXT Files | *.txt", 0)
DateiHandle.l = OpenFile(59, Tomate$)
If DateiHandle <> 0
Dateilaenge = Lof(59)
*MemoryID = AllocateMemory(Dateilaenge + 3)
ReadData(59,*MemoryID, Dateilaenge)
CloseFile(59)
FirstElement(ProxyList.s())
Temp2.s = ""
For i = 0 To Dateilaenge - 1
Temp.b = PeekB(*MemoryID + i)
If Temp = 0
Break
Else
If Temp = #CR
i + 1
Temp = PeekB(*MemoryID + i)
If Temp = #LF
GetProxyList$ = Temp2
FuckForProxy = FindString(GetProxyList$, ":", 1)
Proxys$ = Left(GetProxyList$, FuckForProxy-1)
jaja = Len(GetProxyList$)
Port$ = Right(GetProxyList$, jaja - FuckForProxy)
AddGadgetItem(41, -1, Proxys$)
AddGadgetItem(42, -1, Port$)
AddElement(ProxyList())
ProxyList() = Proxys$
Temp2 = ""
EndIf
Else
Temp2 + Chr(Temp)
EndIf
EndIf
Next
EndIf
FreeMemory(*MemoryID)
EndIf
EndIf
Until WaitWindowEvent = #PB_Event_CloseWindow
End
irgendwie erstmal das erste element der liste anwählen: firstelement()
dann die schleife: repeat
dann, was du machen willst: proxy = liste()
createthread(der_da, proxy$)
dann umschalten: nextelement()
endbedingung, damit du aus der schleife rauskommst: until letztes element erreicht (da musst du mal in de rhilfe nach entsprechenden befehlen suchen)
Hoffe einer von euch kann mir da helfen, werde noch wahnsinnig damit
