procedure
TConverterForm
.
LoginPageButtonClick(Sender: TObject);
const
ValueProp =
'value='
''
;
var
QueryData: TStringList;
PageProfile:
String
;
ErrorRaised:
Boolean
;
HashCode:
String
;
begin
QueryData := TStringList
.
Create;
try
with
QueryData
do
begin
Add(
'email=<i>логин</i>'
);
Add(
'pass=<i>пароль</i>'
);
Add(
'expire=0'
);
Add(
'vk=1'
);
end
;
try
HTTPQuery
.
HandleRedirects :=
False
;
ErrorRaised :=
False
;
except
on
E: Exception
do
begin
ErrorRaised :=
True
;
PageProfile :=
'Ошибка: '
+ E
.
ClassName +
', '
+ E
.
Message;
end
;
end
;
if
ErrorRaised
then
Exit;
with
QueryData
do
begin
Clear;
HashCode := Copy(PageProfile, Pos(ValueProp, PageProfile) + Length(ValueProp),
60
);
HashEdit
.
Text := HashCode;
Add(
's='
+ HashCode);
Add(
'op=slogin'
);
Add(
'redirect=1'
);
Add(
'expire=0'
);
Add(
'to='
);
end
;
try
HTTPQuery
.
HandleRedirects :=
True
;
if
Pos(
'logout'
, PageProfile) <>
0
then
MessageBox(
0
,
'Авторизация на сайте ВКонтакте удалась!'
,
'Информация'
, MB_ICONINFORMATION)
else
MessageBox(
0
,
'Ошибка! Авторизация на сайте ВКонтакте неудалась!'
,
'Внимание'
, MB_ICONEXCLAMATION);
except
on
E: Exception
do
begin
ErrorRaised :=
True
;
PageProfile :=
'Ошибка: '
+ E
.
ClassName +
', '
+ E
.
Message;
end
;
end
;
finally
QueryMemo
.
Text := PageProfile;
QueryData
.
Free;
end
;
end
;