Ja już nie wiem czy to Indy 9 sprawia takie problemy czy Wy (ostatnio było kilka wątków na temat Indy i ciastek) coś źle robicie. Do takich prostych spraw nie trzeba żadnego CookieMenagera. Macie przykład dla Indy 10 (polecam przesiadkę z 9 na 10) z tym nieszczęsnym sendspace (nie wiedziałem czy com czy pl to zrobiłem oba):
procedure TForm1.Button1Click(Sender: TObject);
const
UA = 'Mozilla/5.0 (Windows NT 5.1; rv:7.0.1) Gecko/20100101 Firefox/7.0.1';
CONTENT_TYPE = 'application/x-www-form-urlencoded';
LOGIN_URL = 'http://www.sendspace.pl/logowanie';
LOGIN = 'login';
PASS = 'haslo';
var
sl: TStringList;
begin
IdHTTP1.Request.UserAgent:= UA;
IdHTTP1.HandleRedirects:= True;
IdHTTP1.Get(LOGIN_URL);
IdHTTP1.Request.Referer:= LOGIN_URL;
IdHTTP1.Request.ContentType:= CONTENT_TYPE;
sl:= TStringList.Create;
try
sl.Add('login%5Busername%5D=' + LOGIN);
sl.Add('login%5Bpassword%5D=' + PASS);
Memo1.Text:= IdHTTP1.Post(LOGIN_URL, sl); //zwraca HTML zalogowanej strony
finally
sl.Clear;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
const
UA = 'Mozilla/5.0 (Windows NT 5.1; rv:7.0.1) Gecko/20100101 Firefox/7.0.1';
CONTENT_TYPE = 'application/x-www-form-urlencoded';
LOGIN_URL = 'http://www.sendspace.com/login.html';
LOGIN = 'loginek';
PASS = 'haselko';
var
sl: TStringList;
begin
IdHTTP1.Request.UserAgent:= UA;
IdHTTP1.HandleRedirects:= True;
IdHTTP1.Get(LOGIN_URL);
IdHTTP1.Request.Referer:= LOGIN_URL;
IdHTTP1.Request.ContentType:= CONTENT_TYPE;
sl:= TStringList.Create;
try
sl.Add('action=login');
sl.Add('submit=login');
sl.Add('target=%252F');
sl.Add('action_type=login');
sl.Add('remember=1');
sl.Add('username=' + LOGIN);
sl.Add('password=' + PASS);
Memo1.Text:= IdHTTP1.Post(LOGIN_URL, sl);
finally
sl.Clear;
end;
end;