Здравствуйте! Я новичок в delphi, вот решил для начала сдеать регистратор на сайтах uCoz. При написании этой программы возникли некоторые проблеммы.
Сделал парсер капчи, он выводит её в Image. Все прекрасно работает, но только при регистрации пишет, что капча введена неверно. В чем может быть проблемма?
Код получения капчи:
Код:
var
html:WideString;
Stream:TStream;
gif:TGIFimage;
begin
html:=IdHTTP1.Get('http://freezly.ru/index/3');
Delete(html,1,pos('<img alt="" style="margin:0;padding:0;border:0;cursor:pointer;" id="secImg" align="absmiddle" src="',html)+length('<img alt="" style="margin:0;padding:0;border:0;cursor:pointer;" id="secImg" align="absmiddle" src="'));
Delete(html,pos('" onclick',html),length(html));
Stream:=TStringStream.Create(IdHTTP1.Get('http://freezly.ru/'+html));
Gif:=TGIFImage.Create;
Gif.LoadFromStream(Stream);
Image1.Picture.Assign(Gif.Bitmap);
Gif.Free;
Stream.Free;
end;
Код отправки Post запроса на регистрацию:
Код:
var params,responseres:tstringlist;
begin
idhttp1.AllowCookies:=True;
idhttp1.CookieManager:=IdCookieManager1;
idHTTP1.HandleRedirects:=True;
params:=TStringList.Create;
responseres:=TStringList.Create;
params.Add('jkd498=1');
params.Add('act=b3eaf0297e54cda7dbb515f796a255d1a17c1c');
params.Add('ssid=371134361563377774606');
params.Add('jkd428=1');
params.Add('sos=3033334202');
params.Add('password1='+XPEdit3.Text);
params.Add('name=username surname');
params.Add('user='+XPEdit2.Text);
params.Add('password='+XPEdit3.Text);
params.Add('email='+XPEdit4.Text);
params.Add('gender=1');
params.Add('code='+XPEdit1.Text);
params.Add('seckey=4550763042440553773');
params.Add('a=4');
params.Add('s=0');
responseres.Text:=idhttp1.Post('http://freezly.ru/index/',params);
if Pos('Регистрация успешно завершена!',responseres.Text)>0 then
XPEdit5.Text := responseres.Text
else ShowMessage('Ошибка регистрации!');
XPEdit5.Text := responseres.Text;