Показать сообщение отдельно

  #6  
Старый 17.06.2010, 10:38
heretic1990
Постоянный
Регистрация: 02.07.2008
Сообщений: 472
Провел на форуме:
3728999

Репутация: 444
По умолчанию

fenixelite, попробуй так
Код:
function GetSubStr(InputStr, BeginStr, EndStr: String): String;
var
  s: String;
  sp, ep: Integer;
begin
  Result := '';
  if pos(BeginStr, InputStr) <> 0 then begin
    sp := pos(BeginStr, InputStr)+length(BeginStr);
    s := copy(InputStr,sp,length(InputStr));
    ep := pos(EndStr,s)-1;
    Result := copy(s,1,ep);
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  mp: TIdMultiPartFormDataStream;
begin
  IdHTTP1.Get('http://vkontakte.ru');
  IdHTTP1.Request.Referer := 'Referer: http://vkontakte.ru/login.php';

  mp := TIdMultiPartFormDataStream.Create;
  mp.AddFormField('op', 'a_login_attempt');
  Memo1.Lines.Text := IdHTTP1.Post('http://vkontakte.ru/login.php', mp);
  Memo1.Lines.SaveToFile('c:\111.html');
  mp.Free;

  mp := TIdMultiPartFormDataStream.Create;
  mp.AddFormField('act', 'login');
  mp.AddFormField('success_url', '');
  mp.AddFormField('fail_url', '');
  mp.AddFormField('try_to_login', '1');
  mp.AddFormField('to', '');
  mp.AddFormField('vk', '');
  mp.AddFormField('email', Edit1.Text);
  mp.AddFormField('pass', Edit2.Text);
  mp.AddFormField('expire', '1');
  Memo1.Lines.Text := IdHTTP1.Post('http://login.vk.com', mp);
  Memo1.Lines.SaveToFile('c:\222.html');
  mp.Free;

  mp := TIdMultiPartFormDataStream.Create;
  mp.AddFormField('op', 'slogin');
  mp.AddFormField('redirect', '1');
  mp.AddFormField('expire', '1');
  mp.AddFormField('to', '');
  mp.AddFormField('s', GetSubStr(Memo1.Text, 'id=''s'' value=''', ''''));
  mp.AddFormField('email', 'alena@tdutn.com');
  mp.AddFormField('pass', 'flouer');
  mp.AddFormField('expire', '1');
  Memo1.Lines.Text := IdHTTP1.Post('http://vkontakte.ru/login.php', mp);
  Memo1.Lines.SaveToFile('c:\333.html');
  mp.Free;

  if pos('(это Вы)', Memo1.Text) > 0 then
    MessageDlg('Залогинились.'+#13#10+GetSubStr(Memo1.Text, '<h1> <b>Online</b>', '<span>'), mtInformation, [mbOK], 0)
  else
    MessageDlg('Не залогинились!', mtInformation, [mbOK], 0);
end;
 
Ответить с цитированием