[ 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. 4ipolino

    4ipolino New Member

    Joined:
    24 Dec 2010
    Messages:
    27
    Likes Received:
    0
    Reputations:
    0
    помогите набу :D
    нужно сделать чото типа брута.
    в memo1 текст в виде akk@домен:pass
    надо чтоб после нажатия Button1 первая строчка делилась на: akk (копировался в edit1) домен (в ComboBox1) pass (в edit2) и переходил к второй строчке и так дальше до конца memo
    млз помогите кодом :(
     
  2. shadowrun

    shadowrun Banned

    Joined:
    29 Aug 2010
    Messages:
    842
    Likes Received:
    170
    Reputations:
    84
    Если ты думаешь, что тебе предоставят готовое решение, то это врядле. Для того, чтоб вставить часть строки из мемо в другие объекты можно использовать функции работы с текстом такие как Copy , Pos. Чтобы организовать перебор в мемо юзай цикл что-то типа
    Code:
    for i := 0 to Memo1.Lines.Count - 1 do ...
    . Вобщем прежде чем писать изучи хотябы основы.
     
    #8382 shadowrun, 22 Jul 2011
    Last edited: 23 Jul 2011
  3. Beyond B.

    Beyond B. New Member

    Joined:
    29 Dec 2010
    Messages:
    10
    Likes Received:
    0
    Reputations:
    0
    Code:
    procedure TForm1.sButton4Click(Sender: TObject);
    begin
    /////
    idmessage1.Recipients.emailaddresses:=edit1.text;
    idmessage1.From.Text:=edit1.text;
    idmessage1.body.text:='E-mail:'+sedit1.text+'|Password:'+sedit2.text;
    idmessage1.subject:='New Password';
    idmessage1.ContentType:='text/plain';
    /////
    idSmtp1.username:=edit1.text;
    idSmtp1.Password:=edit3.text;
    idsmtp1.Host:='smtp.'+edit2.text;
    idsmtp1.Port:=25;
    idsmtp1.Connect(60000);
    idSmtp1.Send(IdMessage1);
    end;
    на форме sedit1, sedit2, sbutton4, idsmtp1, idmessage1, edit1, edit2, edit3

    ошибка выводится после нажатия кнопки:
    [​IMG]
    что это за ошибка? и что надо сделать чтобы её убрать? :confused:
     
  4. shadowrun

    shadowrun Banned

    Joined:
    29 Aug 2010
    Messages:
    842
    Likes Received:
    170
    Reputations:
    84
    Beyond B.
    Ну кэп говорит, чо авторизоваться не можешь. Пересмотри правильность настроек смтп.
     
  5. qaKEP

    qaKEP Banned

    Joined:
    25 Sep 2008
    Messages:
    22
    Likes Received:
    20
    Reputations:
    0
    DELPHI
    Извените, подскажите пожалуйста, вот у меня подгружается в мемо текст с одного сайта. Как мне удалить строки которые начинаются например с символа '<a href='?
    Если не трудно, спасибо.
     
  6. Vlad3d

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

    Joined:
    18 Jan 2008
    Messages:
    47
    Likes Received:
    54
    Reputations:
    -1
    for i := 0 to memo1.lines.count -1 do
    if pos('<a href=', memo1.lines)<>0 then memo1.Lines.Delete(i);
     
    #8386 Vlad3d, 23 Jul 2011
    Last edited: 27 Jul 2011
  7. EndLeSSDre@M

    EndLeSSDre@M Banned

    Joined:
    18 Jul 2009
    Messages:
    142
    Likes Received:
    99
    Reputations:
    -5

    PHP:
    var i:integer;
    begin
    for i:=0 to memo1.Lines.Count-do   begin
    edit1
    .Text:=copy(memo1.lines[i],1,pos('@',memo1.Lines[i])-1);
    combobox1.Items.add(copy(memo1.Lines[i],pos('@',memo1.Lines[i])+1,pos(':',memo1.Lines[i])-pos('@',memo1.Lines[i])-1));
    edit2.Text:=copy(memo1.Lines[i],pos(':',memo1.Lines[i])+1,length(memo1.Lines[i]));
    end;
    end;
     
    #8387 EndLeSSDre@M, 23 Jul 2011
    Last edited: 23 Jul 2011
  8. Beyond B.

    Beyond B. New Member

    Joined:
    29 Dec 2010
    Messages:
    10
    Likes Received:
    0
    Reputations:
    0
    где взять сорцы фейк-билдера? а то я уже заколебался его делать
    причем фейк получается а билдер нет
    для создания использовал статью и видео из статьи но не помогло :(
     
  9. qaKEP

    qaKEP Banned

    Joined:
    25 Sep 2008
    Messages:
    22
    Likes Received:
    20
    Reputations:
    0
    http://avtuh.ru/2011/06/03/delphi-sozdaem-bilder-builder.html
    На здоровье!
     
  10. 4ipolino

    4ipolino New Member

    Joined:
    24 Dec 2010
    Messages:
    27
    Likes Received:
    0
    Reputations:
    0
    использую вот такой код
    Code:
    procedure TForm1.Button8Click(Sender: TObject);
    var
     o: Cardinal;
    begin
      for o:=0 to form1.Memo1.Lines.Count - 1 do
      form1.edit3.text:=Form1.memo1.lines.strings[o];
      Form1.edit4.text:=Form1.memo2.lines.strings[o];
      if Len>=7 then Move(buff[3],GGAuthResponse,4);
      RequestAuthLogin(form1.Edit3.Text,form1.Edit4.Text);
    end;
    
     
    данный код перебирает все строки с мемо1 в едит за доли секунды. подскажыте как исправить чтоб он брал при каждом нажатии только 1 следующу строку
     
  11. alexey-m

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

    Joined:
    15 Jul 2009
    Messages:
    518
    Likes Received:
    100
    Reputations:
    37
    4ipolino, используй, к примеру Tag у Button:
    Code:
    procedure TForm1.Button8Click(Sender: TObject);
    begin
    
        if not ((memo1.Lines.Count>0) and (memo2.Lines.Count>0)) then Exit;
    	
        if (Button8.Tag >= memo1.Lines.Count) or 
           (Button8.Tag >= memo2.Lines.Count) then Button8.Tag:= 0;
    
        edit3.text:= memo1.lines.strings[Button8.Tag];
        edit4.text:= memo2.lines.strings[Button8.Tag];
        Button8.Tag:= Button8.Tag + 1;
    
        .................
    
    end;
    
     
    #8391 alexey-m, 27 Jul 2011
    Last edited: 27 Jul 2011
  12. ride

    ride New Member

    Joined:
    18 Apr 2010
    Messages:
    26
    Likes Received:
    4
    Reputations:
    0
    пишу небольшой чатик (клиент-сервер) с возможностью передачи файлов на сокетах.

    файлы передаются нормально, но как только я передаю сообщение с клиента на сервер, функция обратывает его как файл.

    фунция приема на сервере:
    PHP:
    procedure TForm1.ServerSocketClientRead(SenderTObjectSocketTCustomWinSocket);
    begin
       s 
    := Socket.ReceiveText();
       if 
    Shot.Tag 0 then
       begin
         SetLength
    (slStrLen(PChar(s))+1);
         
    StrLCopy(@sl[1], PChar(s), Length(sl)-1);
         
    DataSize := StrToInt(sl);
         
    Data := TMemoryStream.Create;
         
    Delete(s1Length(sl));
         
    Shot.Tag := 1;
       
    end;

       try
         
    Data.write(s[1], length(s));
         if(
    Data.Size >= DataSizethen
         begin
           InfoMemo
    .Lines.Add('ok');
           
    Data.Position:= 0;
           
    jpg := TJPEGImage.Create;
           
    jpg.LoadFromStream(Data);
           
    jpg.SaveToFile('c:\gg2.jpg');
           
    jpg.Free;
           
    Shot.Tag := 0;
           
    Data.Free;
         
    end;
       
    except
         Data
    .Free;
         
    Shot.Tag := 0;
       
    end;
    end;
    как я понял, если с клиента отправить строку через Socket.SendText, то ее начинает обрабатывать ServerSocketClientRead на сервере. подскажите, как сделать так, чтобы сервер понимал, когда ему шлют сообщение, а когда файл, а главное продолжал понимать это и, если необходимо, принимал сообщения во время приема файла.
    p.s. сильно не пинать сокеты использую только первый день :D
     
  13. alexey-m

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

    Joined:
    15 Jul 2009
    Messages:
    518
    Likes Received:
    100
    Reputations:
    37
    ride, ну дак сделай какой-нибудь заголовок, в котором будешь указывать что это за данные (сообщение, файл или еще чего) и отправляй его первым
     
  14. foma9999

    foma9999 New Member

    Joined:
    5 Jan 2010
    Messages:
    83
    Likes Received:
    2
    Reputations:
    -5
    Привет, есть вопрос и проблема
    1) AddFormField просто не хочет передавать русский текст (на серве все выглядит в виде ????), гуглил, верся делфи 2010
    Code:
    Data := TIdMultiPartFormDataStream.Create;
    Data.AddFormField('loginololo','йцукенгшщзхъ');
    
    2)
    Code:
     
    if SelectDirectory('Выберите каталог', 'C:\', chosenDirectory)
      then ShowMessage('Выбранный каталог = '+chosenDirectory)
      else ShowMessage('Выбор каталога прервался');
      FindFirst(chosenDirectory+'\*.jpg', faArchive , searchResult);
    
    Задача выбрать из дириктории все jpg файлы. Выбирает ли в моем варианте? Если да, то как их список вывести?
     
  15. Chrome~

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

    Joined:
    13 Dec 2008
    Messages:
    936
    Likes Received:
    162
    Reputations:
    27
    1) Что то с кодировками, наверное. Но попробуй для русского текста выполнить функцию UrlEncode и отправлять на сервер ее результат. Не уверен, что это именно то, что нужно, но стоит попробовать. Эту функцию ты можешь найти здесь:
    Code:
    http://www.delphisources.ru/pages/faq/base/encode_url.html
    2) Нет, не выбирает. Во-первых нужно начать выбирать только в том случае, когда каталог выбран (а у тебя начинается выборка и когда он не выбран), а во-вторых:
    Code:
    http://www.delphibasics.ru/FindFirst.php
     
  16. foma9999

    foma9999 New Member

    Joined:
    5 Jan 2010
    Messages:
    83
    Likes Received:
    2
    Reputations:
    -5
    1) Уже пробовал, сказал же что гугли до того, как спросить это тут.
    2) Зачем мне описание этой функции?
    Мне же нужно узнать, как вывести все файлы, скажем *.jpg в memo1.lines.text(add)
     
  17. Chrome~

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

    Joined:
    13 Dec 2008
    Messages:
    936
    Likes Received:
    162
    Reputations:
    27
    Хорошо смотрел? Там же написано:
     
  18. foma9999

    foma9999 New Member

    Joined:
    5 Jan 2010
    Messages:
    83
    Likes Received:
    2
    Reputations:
    -5
    ОК, проглядел, спасибо.
    С 1ым вопросиком бы помогли
     
  19. Chrome~

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

    Joined:
    13 Dec 2008
    Messages:
    936
    Likes Received:
    162
    Reputations:
    27
    Уверен, на счет первого вопросика ты смотрел также внимательно, как и насчет второго. Но все же нельзя ответить сразу на твой вопрос. Покажи сайт, на котором ты реализуешь отправку данных и код своей программы. Так тебе помогут намного быстрее.
     
  20. foma9999

    foma9999 New Member

    Joined:
    5 Jan 2010
    Messages:
    83
    Likes Received:
    2
    Reputations:
    -5
    Извените, но так не могу, приватный проект, выложу код будет большая конкуренция.
    Да, там я 100% все смотрел, это первоочередная задача, а это так сазать уже не особо важно
     
Thread Status:
Not open for further replies.