Appchek. Delphi

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by Anifuck, 20 May 2011.

  1. Anifuck

    Anifuck Member

    Joined:
    12 Nov 2010
    Messages:
    79
    Likes Received:
    7
    Reputations:
    0
    Представляю вам Appchek программа, проверяет находится ли приложение на аккаунте ВК.
    ЯП паскаль, среда программирования- Delphi
    [​IMG]
    Программа однопоточная но не подвисает. Всё просто и понятно! но всё же
    Инструкция
    Берём ID приложения пишем его в поле вверху программы, в поле Аккаунты вставляем аккаунты вконтакте в формате логин:пароль. Нажимаем кнопку Чекать, в правом поле появятся аккаунты на которых присутствует приложение. Всё!
    Cкачать программу можете по ссылке ниже
    http://zalil.ru/31082343
    Пароль: byanifuck
    Жду ваших отзывов/критики, спасибо.
    ICQ 571-859-418
     
  2. 090808

    090808 Member

    Joined:
    15 Mar 2009
    Messages:
    171
    Likes Received:
    46
    Reputations:
    10
    Пора на многопоточность переходить :)
     
  3. Anifuck

    Anifuck Member

    Joined:
    12 Nov 2010
    Messages:
    79
    Likes Received:
    7
    Reputations:
    0
    да я бы с радостью) но что то не занимался еще этим вопросом)))
     
  4. 090808

    090808 Member

    Joined:
    15 Mar 2009
    Messages:
    171
    Likes Received:
    46
    Reputations:
    10
    Лишних 5 строк кода :)
     
  5. Anifuck

    Anifuck Member

    Joined:
    12 Nov 2010
    Messages:
    79
    Likes Received:
    7
    Reputations:
    0
    ну может покажите мастер класс?)))
    код скину=))
     
  6. rpo3a

    rpo3a New Member

    Joined:
    24 Apr 2011
    Messages:
    33
    Likes Received:
    1
    Reputations:
    0
    Мне бы тоже интересно как сделать многопоточность....
     
  7. Jingo Bo

    Jingo Bo Member

    Joined:
    25 Oct 2009
    Messages:
    368
    Likes Received:
    51
    Reputations:
    7
    Выкладывай исходники)
     
  8. Anifuck

    Anifuck Member

    Joined:
    12 Nov 2010
    Messages:
    79
    Likes Received:
    7
    Reputations:
    0
    PHP:
    constructor TNewThread.Create(CreateSuspendedBoolean);
    begin
      inherited Create
    (CreateSuspended);
    end;


    procedure TForm1.Button1Click(SenderTObject);
    begin
     TNewThread
    .Create(false);
    end;
    procedure TNewThread.Execute;
    var
    s,mail,pass:string;
    logouton,login,app,str:string;
    logout:Tstringlist;
    c,p,prov,wapp,vsego:integer;
    begin
    form1
    .IdHTTP1.AllowCookies:=true;
     
    form1.IdHTTP1.HandleRedirects:=true;
    logout:=Tstringlist.Create;
    logout.add('act=logout');
    logout.add('al_frame=1');
    logout.add('from_host=vkontakte.ru');
    logout.add('hash=cb71f7c9133882c443');
    str:='/app'+form1.Edit1.Text;
    prov:=0;
    for 
    c:= 0 to form1.Memo1.Lines.Count-do
    begin
    logouton
    :=form1.idhttp1.Post('http://login.vk.com/',logout);
    s:=form1.Memo1.Lines.Strings[c];
    mail:=copy(s,1,Ansipos(':',s)-1);
    pass:=copy(s,Ansipos(':',s)+1,length(s));
    login:=form1.IdHTTP1.Get('http://vkontakte.ru/login.php?email='+mail+'&pass='+pass);
    app := form1.IdHTTP1.Get('http://vkontakte.ru/apps?act=apps');
    prov:=prov+1;
    form1.Label2.Caption:=inttostr(prov);
    form1.Label1.Repaint;
    form1.Label2.Repaint;
    form1.Label3.Repaint;
    := Pos(Strapp);
    if 
    P>0 then
    form1
    .Memo2.Lines.Add(mail+':'+pass);
    end;
    end;
    procedure TForm1.Memo1Change(SenderTObject);
    var
    clv:integer;
    begin
    clv
    :=memo1.lines.count;
    label1.Caption:=inttostr(clv);
    end;

    procedure TForm1.Memo2Change(SenderTObject);
    var
    clv:integer;
    begin
    clv
    :=memo2.lines.count;
    label3.Caption:=inttostr(clv);
    end;
    procedure TForm1.FormCreate(SenderTObject);
    begin
    showmessage
    ('ответственность за прогу не несу!')
    end;

    end.
     
  9. Chrome~

    Chrome~ Elder - Старейшина

    Joined:
    13 Dec 2008
    Messages:
    937
    Likes Received:
    162
    Reputations:
    27
    Anifuck, основной код ты выполняешь в дополнительном потоке.
    Есть замечания:
    1. Конструктор для класса TNewThread необязательно было записывать, так как в нем ты по сути ничего особенного не делаешь.
    2. Очень важно: работать с формой можно только из основного потока. Используй метод Synchronize своего дополнительного потока, чтобы выполнить процедуру по обновлению окна в основном потоке.
     
    #9 Chrome~, 20 May 2011
    Last edited: 20 May 2011
  10. TOP4

    TOP4 Banned

    Joined:
    19 Dec 2010
    Messages:
    23
    Likes Received:
    4
    Reputations:
    1
    Зачем справа здоровый groupbox "my icq"? =))
     
  11. Anifuck

    Anifuck Member

    Joined:
    12 Nov 2010
    Messages:
    79
    Likes Received:
    7
    Reputations:
    0
    без групбокса не симметрично получается и не красиво. я незнал что туда вставить, но не оставлять же пустым)
    может дорабатывать буду позже поменяю.