|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Запуск нескольких потоков
Народ, сорри, но уже мозг кипит. есть кнопка на форме для запуска потоков.
Код:
var Form1: TForm1; Pay: array [1..2000] of BUX; http_1: array [1..2000] of TIdHTTP; IdCookieManager1_Pay: array [1..2000] of TIdCookieManager; procedure TForm2.Bux_Button2Click(Sender: TObject); var w:integer; s:integer; cw : integer; // счетчик цикло begin for w:=1 to Form2.Listview1.Items.count do begin Pay[w]:=1.Create(True); Pay[w].FreeOnTerminate := True; Pay[w].Priority:=tpnormal; Pay[w].Resume; end; end; есть поток Код:
unit T1; interface uses Windows, SysUtils, Dialogs, Classes, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdHTTP, RpDefine, RpRender, RpRenderHTML, IdCookieManager, IdIOHandler, IdIOHandlerSocket, IdIOHandlerStack, IdSSL, IdSSLOpenSSL, StrUtils, pngimage; type 1 = class(TThread) http_1:TIdHTTP; IdCookieManager1_Pay: TIdCookieManager; RvRenderHTML2: TRvRenderHTML; IdSSLIOHandlerSocketOpenSSL1: TIdSSLIOHandlerSocketOpenSSL; private { Private declarations } protected procedure Execute; override; public end; implementation uses Unit1 procedure 1.Execute; var cw : integer; // счетчик цикло i : integer; // счетчик цикло a : integer; // счетчик цикло BPos : integer; // счетчик цикло EPos : integer; // счетчик цикло st:TStringStream; str:AnsiString; s:TStringStream; URL_Pay:String; Login:String; Pass:String; inf:TStringList; img: TMemoryStream; png: TPNGObject; begin for i:=0 to Form2.Listview1.Items.count-1 do begin URL_Pay :=Form2.Listview1.Items[i].SubItems[0];//сайты Login := Form2.Listview1.Items[i].SubItems[1];//логины Pass := Form2.Listview1.Items[i].SubItems[2];//пароли begin IdCookieManager1_Pay:= TIdCookieManager.Create(nil); http_1 := TidHTTP.Create(nil); http_1.AllowCookies:=true; http_1.HandleRedirects:= true; cw:=getnumber; s:=TStringStream.Create; st:=TStringStream.Create; inf:=tstringlist.create; begin http_1.get('http://' + URL_Pay + 'login.php?r=',s); end; If pos('image.php?', s.datastring)>0 then begin /// end else /// end; try except end; end; finally http_1.free; end; end; end; ; Код:
cw : integer; ind:integer=-1; function getnumber:integer; begin if ind<>form1.Listview1.items.Count then inc(ind); result:=ind; end; begin while cw<form2.Listview1.items.Count do begin Что мне нада сделать для того что бы для каждой записи создавался поток и работал только с нею Последний раз редактировалось bulldog, 11.11.2010 в 10:07. |