Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Работа с сетью в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.05.2010, 14:21   #31
spamer
Software Developer
Старожил
 
Аватар для spamer
 
Регистрация: 19.12.2008
Сообщений: 2,070
По умолчанию

Вот полностью рабочий код, только в uses добавь еще Jpeg:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var data:tstringlist;
      PageProfile, pic:string;
      error:boolean;
      beginpos, endpos : Integer;
  ms:   TMemoryStream;
  jpeg: TJpegImage;
begin
 IdHTTP1.AllowCookies:=true;
 IdHTTP1.HandleRedirects:=false;
 data:=tstringlist.create;
 data.Add('email=ЛОГИН'); // логин для авторизации
 data.Add('pass=ПАРОЛЬ');  // пароль для авторизации
 data.Add('expire=');
 data.Add('vk=');
 error:=false;
 try
  PageProfile:=IdHTTP1.Post('http://login.vk.com/?act=login', data);
 except
  error:=true;
 end;

 if not(error) then
  begin
   data.Clear;
   data.Add('s='+Copy(PageProfile, Pos('value', PageProfile)+7, 56));
   data.Add('op=slogin');
   data.Add('redirect=1');
   data.Add('expire=0');
   data.Add('to=');
   IdHTTP1.HandleRedirects:=true;
   try
    PageProfile:=IdHTTP1.Post('http://vkontakte.ru/login.php', data);
   except
   end;
   beginpos := Pos('center', PageProfile);
   endpos := PosEx('/>', PageProfile, beginpos + 21);
   pic := Copy(PageProfile, beginpos + 21, endpos - (beginpos + 21));
   Memo1.Lines.Add(pic);

    ms := TMemoryStream.Create;
    jpeg := TJpegImage.Create;
    try
      IdHTTP1.Get(pic, ms);
      ms.Position := 0;
      jpeg.LoadFromStream(ms);
      Image1.Picture.Graphic := jpeg;
    finally
      jpeg.Free; ms.Free;
    end;
  end
 else
  Memo1.Lines.Add('Авторизация не удалась');

 Data.Free;
end;
Будь проще и люди к тебе потянутся
spamer вне форума Ответить с цитированием
Старый 07.05.2010, 15:19   #32
Alex2009
Proger Man
Форумчанин
 
Аватар для Alex2009
 
Регистрация: 07.03.2009
Сообщений: 584
По умолчанию

Выбевает ошибку
Изображения
Тип файла: jpg 222.jpg (113.6 Кб, 112 просмотров)
ShowMessage('Добро пожаловать!');
Alex2009 вне форума Ответить с цитированием
Старый 07.05.2010, 15:32   #33
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

uses jpeg;
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 07.05.2010, 15:40   #34
Alex2009
Proger Man
Форумчанин
 
Аватар для Alex2009
 
Регистрация: 07.03.2009
Сообщений: 584
По умолчанию

Дело в том что я его подключил.

Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, IdCookieManager, IdBaseComponent, IdComponent,
  IdTCPConnection, IdTCPClient, IdHTTP, StrUtils, ComCtrls, ExtCtrls, Jpeg;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Edit1: TEdit;
    Edit2: TEdit;
    IdHTTP1: TIdHTTP;
    IdCookieManager1: TIdCookieManager;
    Memo1: TRichEdit;
    Image1: TImage;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var data:tstringlist;
      PageProfile, pic:string;
      error:boolean;
      beginpos, endpos : Integer;
  ms:   TMemoryStream;
  jpeg: TJpegImage;
begin
  IdHTTP1.AllowCookies:=true;
  IdHTTP1.HandleRedirects:=false;
  data:=tstringlist.create;
  data.Add('email=SuperCool'); // логин для авторизации
  data.Add('pass=lehacool');  // пароль для авторизации
  data.Add('expire=');
  data.Add('vk=');
  error:=false;
 try
  PageProfile:=IdHTTP1.Post('http://login.vk.com/?act=login', data);
 except
  error:=true;
 end;

 if not(error) then
  begin
    data.Clear;
    data.Add('s='+Copy(PageProfile, Pos('value', PageProfile)+7, 56));
    data.Add('op=slogin');
    data.Add('redirect=1');
    data.Add('expire=0');
    data.Add('to=');
    IdHTTP1.HandleRedirects:=true;
   try
      PageProfile:=IdHTTP1.Post('http://vkontakte.ru/login.php', data);
   except
   end;
   beginpos := Pos('center', PageProfile);
   endpos := PosEx('/>', PageProfile, beginpos + 21);
   pic := Copy(PageProfile, beginpos + 21, endpos - (beginpos + 21));
   Memo1.Lines.Add(pic);
   ms := TMemoryStream.Create;
   jpeg := TJpegImage.Create;
    try
        IdHTTP1.Get(pic, ms);
        ms.Position := 0;
        jpeg.LoadFromStream(ms);
        Image1.Picture.Graphic := jpeg;
    finally
        jpeg.Free; ms.Free;
    end;
  end
 else
        Memo1.Lines.Add('Авторизация не удалась');
        Data.Free;
end;


end.
ShowMessage('Добро пожаловать!');
Alex2009 вне форума Ответить с цитированием
Старый 07.05.2010, 15:44   #35
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

а у меня работает, инди тибурион 10.5.7
Код:
uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
  Dialogs, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient,
  IdHTTP, Buttons,StdCtrls,strutils,IdMultipartFormData,
  IdGlobalProtocols,ExtDlgs,shellapi, ExtCtrls,jpeg;
процедура та же, что дал Денис
Изображения
Тип файла: jpg 1.jpg (43.2 Кб, 106 просмотров)
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 07.05.2010, 15:46   #36
Alex2009
Proger Man
Форумчанин
 
Аватар для Alex2009
 
Регистрация: 07.03.2009
Сообщений: 584
По умолчанию

инди тибурион 10.5.7 дай ссылку на него плиз.
ShowMessage('Добро пожаловать!');
Alex2009 вне форума Ответить с цитированием
Старый 07.05.2010, 15:49   #37
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

судя по ошибке, дело не в нем... у вас там в качестве аватарки какой файл загружен? jpeg-ли?
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума Ответить с цитированием
Старый 07.05.2010, 15:52   #38
Alex2009
Proger Man
Форумчанин
 
Аватар для Alex2009
 
Регистрация: 07.03.2009
Сообщений: 584
По умолчанию

У меня jpg файл,размер 200х400.
ShowMessage('Добро пожаловать!');
Alex2009 вне форума Ответить с цитированием
Старый 07.05.2010, 17:34   #39
W0LF
Форумчанин
 
Аватар для W0LF
 
Регистрация: 28.03.2008
Сообщений: 940
По умолчанию

У меня тоже, Delphi 7, Indy 10.5.* и jpeg в uses есть...
W0LF вне форума Ответить с цитированием
Старый 07.05.2010, 20:31   #40
Alex2009
Proger Man
Форумчанин
 
Аватар для Alex2009
 
Регистрация: 07.03.2009
Сообщений: 584
По умолчанию

Теперь выбивает такую ошибку <html> и в мемо пишет

Код:
cellspacing=7 border=0 width="80%">
   <tr>
    <td class="ta_r">
     <span class="grey">E-mail или Логин:</span>
    </td>
    <td style="padding: 0px">
     <input class="inputText" type="text" name="email" value="" id="email" size="25" style="margin: 0px"
Изображения
Тип файла: jpg Untitled-13.jpg (55.2 Кб, 99 просмотров)
ShowMessage('Добро пожаловать!');

Последний раз редактировалось Alex2009; 07.05.2010 в 21:29.
Alex2009 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
"ОКРВВЕРХ", "ОКР", "ЕСЛИ". Как бы их связать. Каравай Microsoft Office Excel 13 17.02.2010 09:53
Анимированный аватар "В контакте" Web-Gangsta Свободное общение 14 13.01.2010 23:41
при вводе на листе "магазин"- код товара появлялось "описание" товара из "склада" с "продажной ценой" aleksei78 Microsoft Office Excel 13 25.08.2009 12:04
блок "cont" с права не принимает значение "margin: 10px;" которое описано в body tabikA HTML и CSS 5 24.02.2009 21:50