
25.02.2010, 00:20
|
|
Постоянный
Регистрация: 20.01.2010
Сообщений: 338
Провел на форуме: 500264
Репутация:
69
|
|
ну загружай страницу с написанием нового сообщения, выдирай от туда хэш, пойми его структуру, декодируй его, и отсылай с остальными параметрами. вот тебе пример отсылки сообщения)
Код:
function DecChas(chas: string): string;
var
Decchas : string;
str : string;
I : Integer;
Len : integer;
begin
str := Copy(chas, 6, 12);
Len := Length(str);
For I := 0 To Length(str) -1 do
begin
Decchas := Decchas + str[len];
Inc(len, -1);
end;
str := Copy(chas, 21, Length(chas) -5);
str := str + Copy(chas, 5, 1);
Len := Length(str);
For I := 0 To Length(str) -1 do
begin
Decchas := Decchas + str[len];
Inc(len, -1);
end;
Result := Decchas;
end;
....
function SendMessage(const ID, MsgText, MsgTitle: string): boolean;
var
ResponseText, Hash : string;
Post : TStringList;
begin
Hash := HTTP.Get('http://vkontakte.ru/mail.php?act=a_write_box&to=' + id);
Hash := Copy(Hash, Pos('decodehash', Hash) +12, Length(Hash));
Delete(Hash, Pos(#39, Hash), Length(Hash));
Post := TStringList.Create;
Post.Add('act=sent');
Post.Add('ajax=1');
Post.Add('chas=' + DecChas(hash));
Post.Add('to_id=' + id);
Post.Add('title=' + AnsiToUTF8(MsgTitle));
Post.Add('message=' + AnsiToUTF8(MsgText));
Post.Add('from_box=1');
HTTP.Request.Referer := 'http://vkontakte.ru/mail.php?act=a_write_box&to=' + id;
ResponseText := HTTP.Post('http://vkontakte.ru/mail.php', Post);
If Pos('отправлено', ResponseText) <> 0 Then Result := True else Result := False;
Post.Free;
end;
//# Отрывки кода из моего компонента
|
|
|