Значит нужно написать программу, которая бы отправляла на определенный адрес 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.