[ Delphi / Pascal ] — начинающим: задаем вопросы (архивная - 2015)

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by banned, 6 May 2007.

Thread Status:
Not open for further replies.
  1. НTL

    НTL Elder - Старейшина

    Joined:
    26 Jan 2008
    Messages:
    715
    Likes Received:
    205
    Reputations:
    -26
    Не помогло
     
  2. Seven[up]

    Seven[up] Banned

    Joined:
    10 Aug 2009
    Messages:
    45
    Likes Received:
    36
    Reputations:
    0
    помогите авторизироваться на www_._blog_ger_._com
    Code:
      IdHTTP1.AllowCookies:=True;
      IdHTTP1.IOHandler:=IdSSLIOHandlerSocket1;
      IdSSLIOHandlerSocket1.SocksInfo:=IdSocksInfo1;
      idhttp1.CookieManager:=IdCookieManager1;
      IdSSLIOHandlerSocket1.SSLOptions.Method:=sslvSSLv3;
      IdHTTP1.HandleRedirects:=True;
      s:=idhttp1.Get('https://www.blogger.com/start');
      Delete(s,1,Pos('name="security_token" value="', s)+28);
      s:= Copy(s,1,Pos('"', s)-1);
      post:=TStringList.Create;
      post.Add('security_token='+s);
      post.Add('d=/home');
      post.Add('Email='+login);
      post.add('Passwd='+pass);
      post.add('ok=Войти);
      s:=idhttp1.Post('https://www.blogger.com/start',post);
    В S нужно вывести исходный код страницы профиля.
    Спасибо:)
     
  3. ZdezBilYa

    ZdezBilYa Elder - Старейшина

    Joined:
    29 Aug 2008
    Messages:
    198
    Likes Received:
    75
    Reputations:
    19
    чем пользовались для перехвата запроса?
    Мой снифер показывает адрес запроса http://www.blogger.com/legacy-claim.do, а также имена параметров другие
     
  4. Seven[up]

    Seven[up] Banned

    Joined:
    10 Aug 2009
    Messages:
    45
    Likes Received:
    36
    Reputations:
    0
    LiveHTTP в мазилле... Хм, странно...
     
  5. InfectedM

    InfectedM Elder - Старейшина

    Joined:
    4 Nov 2007
    Messages:
    155
    Likes Received:
    12
    Reputations:
    0
    Нужно зайти на 100 страничек и оставатся на них.


    Запускаю их в потоке через TWebBrowser.
    Но почему-то в снифере не видать что куда-то заходит.
    Правильно ли я создаю компонент? :
    Code:
    procedure TMyThread.Execute;
    var
    WebBrowser1: TWebBrowser;
    begin
    WebBrowser1 := TWebBrowser.Create(nil);
    WebBrowser1.Navigate('http://.......ru');
    end;
    
     
  6. wolmer

    wolmer Member

    Joined:
    12 May 2009
    Messages:
    438
    Likes Received:
    97
    Reputations:
    9
    Code:
    var
     buf_read: array [1..4096] of char;
     res_new_file: THandle;
     remain_bytes, buf_for_write: integer;
     ...
     res_new_file:=CreateFileA('d:\test000.gif', GENERIC_WRITE, 0, 0,
                  CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, 0);
     WriteFile(res_new_file, buf_read, remain_bytes, buf_for_write, 0);
     ...
    Где здесь ошибка? Пишет это:
     
  7. M_script

    M_script Members of Antichat

    Joined:
    4 Nov 2004
    Messages:
    2,581
    Likes Received:
    1,317
    Reputations:
    1,557
    WriteFile(res_new_file, buf_read[1], remain_bytes, buf_for_write, 0);
     
  8. alexey-m

    alexey-m Elder - Старейшина

    Joined:
    15 Jul 2009
    Messages:
    518
    Likes Received:
    100
    Reputations:
    37
    проще говоря у тебя несоответствие типа переменных remain_bytes и buf_for_write, должны быть: DWORD;
     
    #6488 alexey-m, 27 Jun 2010
    Last edited: 27 Jun 2010
  9. Spy2ex

    Spy2ex Elder - Старейшина

    Joined:
    20 Sep 2008
    Messages:
    32
    Likes Received:
    15
    Reputations:
    1
    компонент для делфи но код на С++, tregexpr
    некорректно работает данный класс
    Code:
     TRegExpr *r2 = new TRegExpr;
        r2->Expression = "[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}:[0-9]{2,5}";
    
          if(r2->Exec(table))
          {
           while (r2->ExecNext())
           {
             Form1->Memo1->Lines->Add(r2->Match[0]);
           }
          }
         r2->Free();
    
    Получаю
    Code:
    06/2010 21:41
    190.254.20.42:8080
    06/2010 21:39
    89.189.84.234:80
    06/2010 21:39
    
    Почему пропускает другие данные непонятно.
     
  10. TrueBit

    TrueBit Member

    Joined:
    21 Nov 2009
    Messages:
    71
    Likes Received:
    19
    Reputations:
    4
    Я использую вот такую регулярку:
    RegExp.Expression := '\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}:\d{1,5}';
    Всё нормально на выходе..
     
  11. Spy2ex

    Spy2ex Elder - Старейшина

    Joined:
    20 Sep 2008
    Messages:
    32
    Likes Received:
    15
    Reputations:
    1
    вообше отказалось выводить, не работает.
     
  12. TrueBit

    TrueBit Member

    Joined:
    21 Nov 2009
    Messages:
    71
    Likes Received:
    19
    Reputations:
    4
    Только что пробовал, всё работает :confused:
    PS: На delphi 7
     
  13. SNAIPER ShoT

    SNAIPER ShoT Elder - Старейшина

    Joined:
    24 Jun 2007
    Messages:
    48
    Likes Received:
    3
    Reputations:
    0
    эмм.. нужен код по перебору
    acc: pass
    acc1: pass1
    acc2: pass2 и т.д (в принципе сам код есть но только он перебирает не правильно)

    acc: pass
    acc: pass1
    acc: pass2 и т.д подскажите что не так :confused:
     
  14. TrueBit

    TrueBit Member

    Joined:
    21 Nov 2009
    Messages:
    71
    Likes Received:
    19
    Reputations:
    4
    Код в студию
     
  15. fenixelite

    fenixelite Banned

    Joined:
    7 Feb 2010
    Messages:
    294
    Likes Received:
    56
    Reputations:
    6
    SNAIPER ShoT,
    В первом случае :
    PHP:
    for := 0 to Memo1.Lines.Count do 
    begin
     pass 
    := Memo1.Lines[i];
     
    acc := Memo1.Lines[i];
    end;
    Для второго
    PHP:
    For := 0 to Memo1.Lines.Count do
    begin
     acc 
    := Memo1.Lines[i];
     for 
    := 0 to Memo2.Lines.Count do 
      
    begin
       pass 
    := Memo2.Lines[a]
      
    end;
    end;
     
  16. Getty

    Getty Banned

    Joined:
    17 Jun 2010
    Messages:
    104
    Likes Received:
    1
    Reputations:
    0
    Здравствуйте, такой вопрос:
    Пишу прогу на WinAPI нужно в WinProc отлавливать, когда контрол Edit получает и теряет фокус, как правильно это сделать?
     
  17. SNAIPER ShoT

    SNAIPER ShoT Elder - Старейшина

    Joined:
    24 Jun 2007
    Messages:
    48
    Likes Received:
    3
    Reputations:
    0
    Собственно сам сорц .
     
  18. Скотти

    Скотти Member

    Joined:
    17 Sep 2009
    Messages:
    23
    Likes Received:
    8
    Reputations:
    0
    Даров.

    WM_SetFocus() - окно получило фокус
    WM_KillFocus() - окно потеряло фокус
    WM_GetFocus() - вернет дескриптор текущего окна, имеющего фокус.
    Ну и в оконной процедуре обрабатывай их.
     
  19. dos999

    dos999 Elder - Старейшина

    Joined:
    15 Feb 2008
    Messages:
    137
    Likes Received:
    24
    Reputations:
    0
    Code:
         for x := 0 to logins.Count-1 do
          for y := 0 to passwords.Count-1 do
            begin
              if closing = true then Break;
              try
                while k = 1 do
                begin
                  Application.ProcessMessages; // Если поток ещё не отработал, то ждём.
                end;
                Application.ProcessMessages;
                isCyr := false;
                for ch := 1 to length(logins.Items[x]) do
                begin
                  if not (logins.Items[x][ch] in ['a'..'z', 'A'..'Z', '0'..'9']) then isCyr := true;
                end;
                for ch := 1 to length(passwords.Items[y]) do
                begin
                  if not (passwords.Items[y][ch] in ['a'..'z', 'A'..'Z', '0'..'9']) then isCyr := true;
                end;
                if isCyr = false then
                begin
                  Potok[k]                 := Stream.Create(true);
                  Potok[k].login           := logins.Items[x];
                  Potok[k].password        := passwords.Items[y];
                  Potok[k].FreeOnTerminate := True;
                  Potok[k].Resume;
                  inc(k);
                end else inc(z);
                Application.ProcessMessages;
              except end;
            end;
    убираешь один цикл

    Code:
     
           for y := 0 to Min(passwords.Count, logins.Count)-1 do
            begin
              if closing = true then Break;
              try
                while k = 1 do
                begin
                  Application.ProcessMessages; // Если поток ещё не отработал, то ждём.
                end;
                Application.ProcessMessages;
                isCyr := false;
                for ch := 1 to length(logins.Items[y]) do
                begin
                  if not (logins.Items[y][ch] in ['a'..'z', 'A'..'Z', '0'..'9']) then isCyr := true;
                end;
                for ch := 1 to length(passwords.Items[y]) do
                begin
                  if not (passwords.Items[y][ch] in ['a'..'z', 'A'..'Z', '0'..'9']) then isCyr := true;
                end;
                if isCyr = false then
                begin
                  Potok[k]                 := Stream.Create(true);
                  Potok[k].login           := logins.Items[y];
                  Potok[k].password        := passwords.Items[y];
                  Potok[k].FreeOnTerminate := True;
                  Potok[k].Resume;
                  inc(k);
                end else inc(z);
                Application.ProcessMessages;
              except end;
            end;
    
    Но цикл закончиться когда в одном из списков (logins или passwords) кончаться записи.

    PS. Если чёто неправильно, сори. спешу
     
  20. Безработный

    Joined:
    25 Jun 2010
    Messages:
    0
    Likes Received:
    1
    Reputations:
    0
    Имхо нужно delete() заюзать.
     
Thread Status:
Not open for further replies.