[ 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. Artist

    Artist Member

    Joined:
    10 Jul 2010
    Messages:
    89
    Likes Received:
    5
    Reputations:
    0
    Сначало проводишь регистрации на форумах, потом через определеный промежуток времени заходишь на почту и переходишь по ссылке. Письмо активации идет от 30сек и больше. Это ты должен опредилить сам.

    Code:
    idHTTP1.ProxyParams.ProxyServer:=//Сам ip прокси
    idHTTP1.ProxyParams.ProxyPort:=//Порт
    idHTTP1.ReadTimeout:=//В зависимости от качества прокси(в милисекундах)
    
    Вот еще пример как спарсить прокси с мемо

    Code:
    procedure TNewThread.Proxy;
    var
    s:string;
    ip,port:string;
    i:integer;
    begin
    s:=Form1.Memo1.Lines[0];
    i := Pos(':',s);
    IP := Copy(s,1,i-1);
    PORT := Copy(s,i+1,Length(s));
    Form1.Memo1.Lines.Delete(0);
    end;
    
     
    #6721 Artist, 29 Aug 2010
    Last edited: 29 Aug 2010
  2. CheatXX

    CheatXX New Member

    Joined:
    8 Jun 2009
    Messages:
    154
    Likes Received:
    2
    Reputations:
    0
    ты не понял... как программно заходить на email..
    я делал, но после нескольких авторизаций тупо перестает авторизовываться.
     
  3. Artist

    Artist Member

    Joined:
    10 Jul 2010
    Messages:
    89
    Likes Received:
    5
    Reputations:
    0
    Нужно авторизироватся на почтовом сервисе.
    Возможно ты не очищал кукис или вылазит капча.
     
  4. PAXAn

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

    Joined:
    14 Jun 2008
    Messages:
    43
    Likes Received:
    3
    Reputations:
    0
    Уточню немного мой вопрос...
    На форме есть компонент ScrollBox на нём компонет Image. При нажатие мышкой на Image, он начинает передвигаться за мышкой и когда мышка выходит за пределы ScrollBox на нем появляеться полоса прокрутки и далее Image передвигаеться уже за пределами компонента(то есть фактически вслепую).

    Собственно вопрос: Как сделать так чтобы мышка не выходила за пределы ScrollBox, а вместо этого в ScrollBox появлялась бы полоса прокрутки и далее мышка фактически стояла бы на месте, а компонент бы прокручивался. Это позволило бы передвигать Image в нужное место легко и удобно.

    Надеюсь вы меня поняли=)

    ЗЫ добавлю функции которые я использую для перемещения Image

    Code:
    procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    begin
      TImage(sender).Tag:=1;
    end;
    
    procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    begin
      if TImage(sender).tag=1 then
        begin
        TImage(sender).Left:=TImage(sender).Left+x-dx;
        TImage(sender).Top:=TImage(sender).Top+y-dy;
        end;
    end;
    
    procedure TForm1.Image1MouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    begin
      TImage(sender).Tag:=0;
    end;
    





    немного поковырявшьсь в своем коде, сам решил проблему вот таким вот образом
    Code:
        z := (Image1.Top + Image1.Height ) - ( ScrollBox1.Height);
        if z>0 then begin
          ScrollBox1.VertScrollBar.Position:=ScrollBox1.VertScrollBar.Position+z;
          ScrollBox1.VertScrollBar.Range:=ScrollBox1.VertScrollBar.Range+z;
          Mouse.CursorPos:=Point(Mouse.CursorPos.X, Mouse.CursorPos.Y-z);
          end
               else
        if Image1.top<0 then begin
          z:=Image1.Top;
          ScrollBox1.VertScrollBar.Position:=ScrollBox1.VertScrollBar.Position+z;
          ScrollBox1.VertScrollBar.Range:=ScrollBox1.VertScrollBar.Range+z;
          Mouse.CursorPos:=Point(Mouse.CursorPos.X, Mouse.CursorPos.Y-z);
          end;
    
    но тут тоже появился вопросик...можноо ли сразу как небудь измизменить Mouse.CursorPos??? просто если я пишу
    Mouse.CursorPos.Y:=Mouse.CursorPos.Y-z;
    то ругается компилятор
    поэтому пришлось немного поизвращаться. Жду ответов :)
     
    #6724 PAXAn, 30 Aug 2010
    Last edited: 30 Aug 2010
  5. CheatXX

    CheatXX New Member

    Joined:
    8 Jun 2009
    Messages:
    154
    Likes Received:
    2
    Reputations:
    0
    еше вопрос... как куки сохранить в какой-нибудь файл а потом загрузить обратно в прогу? (после перезапуска проги что бы куки остались)
     
  6. 0pTik

    0pTik Banned

    Joined:
    18 Jul 2010
    Messages:
    240
    Likes Received:
    85
    Reputations:
    17
    А зачем тебе это ? Куки живут макс 2-3 часа

    А если по теме то загрузи в Мемо, а потом сохрани в txt
     
  7. CheatXX

    CheatXX New Member

    Joined:
    8 Jun 2009
    Messages:
    154
    Likes Received:
    2
    Reputations:
    0
    как их в мемо загрузить?

    заранее спасибо
     
  8. Voland-791

    Voland-791 Member

    Joined:
    1 May 2009
    Messages:
    163
    Likes Received:
    13
    Reputations:
    5
    memo1.lines.add (Переменная с куками);
     
  9. 0pTik

    0pTik Banned

    Joined:
    18 Jul 2010
    Messages:
    240
    Likes Received:
    85
    Reputations:
    17
    Лучше не Memo1->Lines->Add() а Memo1->Text=
     
  10. CheatXX

    CheatXX New Member

    Joined:
    8 Jun 2009
    Messages:
    154
    Likes Received:
    2
    Reputations:
    0
    переменная с куками TIdCookies
    а в мемо нужно загружать строку, как TidCookies преобразовать в строку?
     
  11. 0pTik

    0pTik Banned

    Joined:
    18 Jul 2010
    Messages:
    240
    Likes Received:
    85
    Reputations:
    17

    IntToStr либо AnsiString(Что-то ) в зависимости от ситуации

    P.S А вобще это азы , учите язык
     
  12. CheatXX

    CheatXX New Member

    Joined:
    8 Jun 2009
    Messages:
    154
    Likes Received:
    2
    Reputations:
    0
    причем тут IntToStr? мы не integer преобразовываем а TidCookies
     
  13. 0pTik

    0pTik Banned

    Joined:
    18 Jul 2010
    Messages:
    240
    Likes Received:
    85
    Reputations:
    17
    TidCookies это у вас переменная или что ?
     
  14. CheatXX

    CheatXX New Member

    Joined:
    8 Jun 2009
    Messages:
    154
    Likes Received:
    2
    Reputations:
    0
    procedure TForm1.Button7Click(Sender: TObject);
    var a:string;
    u:TidCookies;
    begin
    u:=form1.IdCookieManager1.CookieCollection;
    a:=AnsiString(u);
    form1.memo1.Lines.Add(a);
    end;


    выводит

    Ђ F
     
    #6734 CheatXX, 30 Aug 2010
    Last edited: 30 Aug 2010
  15. CheatXX

    CheatXX New Member

    Joined:
    8 Jun 2009
    Messages:
    154
    Likes Received:
    2
    Reputations:
    0
    сделал
    for i:=0 to form1.IdHTTP1.CookieManager.CookieCollection.Count-1 do
    memo1.Lines.Add(IdHTTP1.CookieManager.CookieCollection.Items.CookieText);

    но при значении Items[1] вылетает ошибка
    List index out of bounds(1)
     
  16. CheatXX

    CheatXX New Member

    Joined:
    8 Jun 2009
    Messages:
    154
    Likes Received:
    2
    Reputations:
    0
    вообщем етот метод доставания кук не работает...там всегда 1 кука получается...
    какие еше вариаты есть?м
     
  17. Vlad3d

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

    Joined:
    18 Jan 2008
    Messages:
    47
    Likes Received:
    54
    Reputations:
    -1
    есть цикл который находится в Button1

    for i:=0 to proxy.Count-1 do
    begin
    ....
    ....
    ...
    ...
    end;

    т.е. цикл повторяется столько раз, сколько строк в TStringList`е

    возможно ли остановить цикл на середине, так чтобы он продолжил свою работу после нажатия Button2, т.е.

    for i:=0 to proxy.Count-1 do
    begin
    ....
    ....
    цикл тормозится и ждет пока нажмут Button2, после чего он идет дальше.
    ...
    ...
    end;
     
  18. slesh

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

    Joined:
    5 Mar 2007
    Messages:
    2,702
    Likes Received:
    1,224
    Reputations:
    455
    Самый норм вариант заюзать эвенты.
    т.е. создаешь событие (CreateEvent)
    В цикле когда нужна пауза, то WaitForSingleObject и передаешь ему хендл эвента.
    И теперь будет пауза до тех кор пока ты не выполниш SetEvent в обработчики клика на другую кнопку.
    Единственно то, что код цикла должен быть в потоке, потому что пока обработчик нажатия на кнопку где находится цикл не вернет управления, то тех пор прога будет в полузависшем состоянии
     
  19. PAXAn

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

    Joined:
    14 Jun 2008
    Messages:
    43
    Likes Received:
    3
    Reputations:
    0
    попробуй сделать так, должно работать
    Code:
    procedure TForm1.Button2Click(Sender: TObject);
    begin
      Button2.Tag:=1;
    end;
    
    procedure TForm1.Button1Click(Sender: TObject);
    var
     i:integer;
    begin
      for i:=1 to 10 do begin
        ShowMessage(inttostr(i));
        if i=5 then while Button2.Tag=0 do Application.ProcessMessages;   ..ждем нажатия кнопки
        Button2.Tag:=0; 
        end;
    end;
     
  20. Redeemer

    Redeemer Member

    Joined:
    3 Jul 2010
    Messages:
    203
    Likes Received:
    24
    Reputations:
    1
    Vlad3d, если в программировании не сильно шаришь, то используй вариант ПАХАна.
    А если хочешь чтобы все было по феншую - вариант слеша.
     
Thread Status:
Not open for further replies.