
08.11.2007, 03:53
|
|
Участник форума
Регистрация: 28.10.2007
Сообщений: 143
С нами:
9756326
Репутация:
162
|
|
Сообщение от xaker-boss
Люди как залогиница на сйте(vBulletin)?
Кто может сделать так чтобы через прогу можно было залогинеца на форуме? Дапустим в водиш в(Edit1) логин а в(Edit2) пароль и нажимаеш на буттонт
и если не залогинился выдавал бы типа неверные данные.
А если залогинеца то выдовал бы сообщение типа (Вы вошли как (и то что написано в Edit1))
Кому нетрудно сделайте плиз
ну к примеру можно взять античат а я потом потправлю.
Если можете выложити исходник
Код:
{прогу недописал и извратил xXvladXx}
unit Unit1;
interface
uses
Windows,SysUtils,Variants,Classes,Forms,
OleCtrls,SHDocVw,StdCtrls,Controls;
type
TForm1 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
Button1: TButton;
WebBrowser1: TWebBrowser;
Edit3: TEdit;
procedure Button1Click(Sender: TObject);
procedure WebBrowser1DocumentComplete(Sender: TObject;
const pDisp: IDispatch; var URL: OleVariant);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
function FillForm(WebBrowser: TWebBrowser; FieldName: string; Value: string): Boolean;
var
i, j: Integer;
FormItem: Variant;
begin
Result := False;
if WebBrowser.OleObject.Document.all.tags('FORM').Length = 0 then
begin
Exit;
end;
for I := 0 to WebBrowser.OleObject.Document.forms.Length - 1 do
begin
FormItem := WebBrowser.OleObject.Document.forms.Item(I);
for j := 0 to FormItem.Length - 1 do
begin
try
if FormItem.Item(j).id = FieldName then
begin
FormItem.Item(j).Value := Value;
Result := True;
end;
except
Exit;
end;
end;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
webbrowser1.Navigate(edit3.Text);
//заходим на сайт который написан в edit3
end;
procedure TForm1.WebBrowser1DocumentComplete(Sender: TObject;
const pDisp: IDispatch; var URL: OleVariant);
var
ovElements: OleVariant;
i:integer;
begin
//это типа такая хрень которая просходит когда тупой WebBrowser загрузит страницу
if Url=edit3.Text then begin
//тут проверяем где мы щас типа если там где надо то..
FillForm(webbrowser1,'navbar_username',edit1.Text);
//заполняем navbar_username эт такая хреновина куда логин писать
FillForm(webbrowser1,'navbar_password',edit2.Text) ;
//заполняем navbar_password эт такая хреновина куда пароль писать
ovElements := Webbrowser1.OleObject.Document.forms.item(0).elements;
//это чтото страшное
for i := 0 to (ovElements.Length - 1) do
//тут мы запускаем цикл который проверяет все кнопки на странице
if (ovElements.item(i).name='Вход') then
//тута проверка типа если на кнопки написано Вход то
try //тут исключительный случий(вдруг он кнопку нажать не смог оО )
ovElements.item(i).Click;//тут он пытается её нажать
except
messageboxa(0,'Что-то не так','Что-то не так',0);//тут тишется чтото в алетр если всетаки не получилось нажать кнопку
end;
end;
end;
end. //а тут конец
|
|
|