Всем привет ^^. Давно уроков не было, учёба... Вот решил сделать вам подарок под ёлку. В преддверии Нового Года опередим процесс и изучим сладенькое ;D . Кстати, поздравляю всех с наступающим!!!

Поспешу так же и огорчить, из-за сессии не смогу писать до 25...

Посвящу я этот урок авторизации на сайте Вконтакте. Вы можете использовать множество методов авторизации, которых завались в нете, но сегодня я расскажу только про один, на 7-ке врятли пойдет, этот метод оптимален для Delphi Xe/Xe 2.
Итак:
1) создаем проект, кидаем на форму 2 Edit'a и Button.
2) Поскольку в Xe 2 новые обозначения компонентов, которые не понимают свои же формы из палитры инструментов, зададим стандартный набор uses.
....
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
Эти строки пишем в unit1.pas, для тех кто не понял.
3) Также добавляем на форму IdHttp1 с палитры инструментов Indy Clients и IdCookieManager1 с Indy Misc.
4) Выделяем IdHttp1 и в Object Inspector'e выбираем параметр True для HandleRedirect.
5) В Uses дописываем новые компоненты IdUri, RegExpr(файл regexpr.pas должен лежать в папке с проектом(прилагается в прикрепленных файлах)).
6) Дважды тыкаем на форме по нашему Button'у.
7) В соответствии с этим кодом (любезно спизжен с блога tezmen.ru), правим свой.

procedure TForm1.Button1Click(Sender: TObject);
var
Enter:TStringList;
reg:TRegExpr;
uri: TIdUri;
temp:string;
begin
Enter:=TStringList.Create;
Enter.add('act=login');
Enter.Add('al_test=3');
Enter.Add('email='+edit1.text);
Enter.Add('pass='+edit2.Text);
uri:=TIdUri.Create('http://vkontakte.ru');
idhttp1.RedirectMaximum:=2;
reg:=TRegExpr.create;
reg.Expression:='[0-9a-z]{60}';
temp:=idhttp1.post('http://login.vk.com', Enter);
temp:=idhttp1.response.RawHeaders.GetText;
reg.Exec(temp);
if reg.Match[0]<>'' then
begin
application.processmessages ;
idcookiemanager1.AddServerCookie('remixsid='+reg.Match[0], uri);
messageDlg('Авторизация прошла успешно!', mtInformation, [mbOk], 0);
end
else
begin
messageDlg('Неверный логин или пароль!', mtInformation, [mbOk], 0);
end;
end;
end.

Комментируем, проверяем.