![]() |
|
#1
|
|||
|
|||
![]() Значит нужно написать программу, которая бы отправляла на определенный адрес Post-запрос с куками. Вроде бы все написал, но работать не хочет, программа зависает намертво при отправке запроса. Не могли бы вы подсказать, в чем проблема?
P.S.: в программировании я еще новичок. Если можно, то по-подробнее. Работал в Delphi XE2 Код:
unit main; interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, IdComponent, IdTCPConnection, IdTCPClient, IdHTTP, IdBaseComponent, IdAntiFreezeBase, Vcl.IdAntiFreeze; type TFNubForm = class(TForm) lbl_cookie: TLabel; btn_go: TButton; btn_stop: TButton; edt_url: TEdit; AntiFreeze: TIdAntiFreeze; HTTP: TIdHTTP; Edit1: TEdit; Edit2: TEdit; Label1: TLabel; Memo1: TMemo; lbl_count: TLabel; procedure btn_goClick(Sender: TObject); procedure btn_stopClick(Sender: TObject); procedure FormCreate(Sender: TObject); private Stop: Boolean; public { Public declarations } end; var FNubForm: TFNubForm; implementation {$R *.dfm} procedure TFNubForm.btn_goClick(Sender: TObject); begin Stop := false; edit1.Enabled:=false; edit2.Enabled:=false; edt_url.Enabled:=false; lbl_count.Caption := '0'; lbl_count.Caption := IntToStr(1 + strtoint(lbl_count.Caption)); while not Stop do begin HTTP.Request.CustomHeaders.Text:='Cookie: vkuid=' +edit1.Text +'; vkkey=' +edit2.Text; try HTTP.Post(edt_url.Text,'Text'); except end; lbl_count.Caption := IntToStr(1 + strtoint(lbl_count.Caption)); Memo1.Lines.Add('Собрано'); end; edit1.Enabled:=true; edit2.Enabled:=true; edt_url.Enabled:=true; end; procedure TFNubForm.btn_stopClick(Sender: TObject); begin Stop:=true; end; procedure TFNubForm.FormCreate(Sender: TObject); begin end; end. Последний раз редактировалось Diamant, 26.02.2012 в 11:07. |