Les fonctions pour lire, écrir eles cookies sont contenues dans l'unité Wininet :
Exemple d'écriture d'un cookie pour la session courante :
procedure TForm1.btnSetCookiesClick(Sender: TObject);
var
URL : PChar;
CookieName, CookieData : array[0..255] of char;
begin
{function InternetSetCookie(lpszUrl, lpszCookieName,
lpszCookieData: PAnsiChar): BOOL; stdcall;}
URL := StrNew(PChar(Edit3.Text));
CookieName := 'TestCookie'#0;
CookieData := 'Vrai'#0;
If InternetSetCookie(URL, CookieName, CookieData) then
ShowMessageFmt('%s : %s', [CookieName, CookieData]);
StrDispose(URL);
end;
Pour lire un cookie, où Site représente l'url du site dont on veut récupérer le cookie :
procedure TForm1.btnGetCookiesClick(Sender: TObject);
var
S : array[0..255] of char;
Site : PChar;
Size : DWord;
begin
{function InternetGetCookie(lpszUrl, lpszCookieName,
lpszCookieData: PChar; var lpdwSize: DWORD): BOOL; stdcall;}
Site := StrNew( PChar(Edit3.Text)); //
Size := SizeOf(S);
FillChar(S, SizeOf(S), #32);
if InternetGetCookie(Site, Nil, S, Size) then
Edit1.Text:= S;
FillChar(S, SizeOf(S), #32);
if InternetGetCookie(Site, nil, S, Size) then
Edit2.Text:= S;
StrDispose(Site);
end;
Sinon, regarde sur Torry.net, il y a un freeware avec source nommé cookie detective. Il ne fait que lire et gérer la suppression des cookies, mais c'est vachement bien fait. Le tout en Delphi, of course...
May Delphi be with you