Где ошибка*?!

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by AntiBan, 23 Jul 2010.

  1. AntiBan

    AntiBan New Member

    Joined:
    5 Jun 2010
    Messages:
    7
    Likes Received:
    1
    Reputations:
    0
    сабж.
    Code:
    procedure TForm1.Button1Click(Sender: TObject);
    var
    i : integer;
    begin
    for i := 0 to memo1.lines.Count-1 do
    
    begin
    ICQClient1.Create(nil);
    ICQClient1.UIN:=Copy(memo1.lines[i],1,pos(';',memo1.lines[i])-1);
    ICQClient1.Password:=(memo1.Lines[i],pos('',memo1.Lines[i]+1,Lengt(memo1.lines[i]));
    ICQClient1.Login();
    end;
    
    end;
    
     
  2. W!z@rD

    W!z@rD Борец за русский язык

    Joined:
    12 Feb 2006
    Messages:
    973
    Likes Received:
    290
    Reputations:
    43
    И что дальше?! Что что что?!

    Благо используя навыки телепатии и удаленного компилирования удалось выяснить что вот:
    ICQClient1.Password:=(memo1.Lines,pos('',memo1.Lines+1,Lengt(memo1.lines));


    Учись вопросы задавать и читать что компилятор в случае ошибки выкидывает.

    ок?
     
  3. AntiBan

    AntiBan New Member

    Joined:
    5 Jun 2010
    Messages:
    7
    Likes Received:
    1
    Reputations:
    0
    Что описывать то?! Вот тут возникает ошибка, в выше сказанном коде. Вопрос я по моему прямо поставил, да и дополнений тут возникать не должно.
    Суть процедуры заключается в том, что бы загружала номера + пароль вида uin;pass из memo1, и подкл.
    ---
    Но ошибка всё равно осталась.
     
    #3 AntiBan, 23 Jul 2010
    Last edited: 23 Jul 2010
  4. ADR-007

    ADR-007 Member

    Joined:
    12 Jul 2010
    Messages:
    218
    Likes Received:
    9
    Reputations:
    0
    ICQClient1.Password:=(memo1.Lines,pos('',memo1.Lines+1,Lengt(memo1.lines))
    передайош Pos 3 параметра вместо 2...

    memo1.Lines+1
    несовместимие типи: string i integer

    ICQClient1.Password:=(memo1.Lines,pos('',memo1.Lines+1,Lengt(memo1.lines))
    несовместимие типи: string i хз що


    ПС нужно слушать компілятор... он наверника тебе говорил об етом
     
    #4 ADR-007, 23 Jul 2010
    Last edited: 23 Jul 2010
  5. Chrome~

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

    Joined:
    13 Dec 2008
    Messages:
    936
    Likes Received:
    162
    Reputations:
    27
    Да и для ICQClient1.Password также должна использоваться функция Copy.
     
  6. AlexTheC0d3r

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

    Joined:
    25 Jul 2008
    Messages:
    388
    Likes Received:
    179
    Reputations:
    18
    уродский код

    лучше используй отдельные переменные
     
  7. ADR-007

    ADR-007 Member

    Joined:
    12 Jul 2010
    Messages:
    218
    Likes Received:
    9
    Reputations:
    0
    Code:
    ICQClient1.Password:=cope(
      memo1.lines[i],
      Pos(
            ';',
            memo1.lines[i])+1,
       Length(memo1.lines[i]))
    так паше?
     
    #7 ADR-007, 23 Jul 2010
    Last edited: 23 Jul 2010
  8. greki_hoy

    greki_hoy Member

    Joined:
    4 Mar 2010
    Messages:
    326
    Likes Received:
    57
    Reputations:
    41
    +++
    ну такой код еще при проверке какой то идеи можно увидеть тонны говнокода а в релиз то да такой код не пойдет все стереть и переписать нормально а при проверке какой то идеи ничуть не странно видеть такой код ведь там главное совсем другое а не как написан код а ближе к релизу и код можно привести в порядок но тут есть два противоречивых фактора 1) лень потом пеписывать работающий код да и отчасти трудно иногда так что лучше сразу нормально писать 2) а второй фактор сразу при проверке какой то идеи не будеш же вылизывать код иначе так до понедельника не закончиш хочется побыстрее проверить ))
     
  9. AntiBan

    AntiBan New Member

    Joined:
    5 Jun 2010
    Messages:
    7
    Likes Received:
    1
    Reputations:
    0
    нет. Проблема осталась в именно в этой строчке.
    Лог:
    [Error] Unit1.pas(37): Incompatible types: 'Cardinal' and 'String'
     
  10. ADR-007

    ADR-007 Member

    Joined:
    12 Jul 2010
    Messages:
    218
    Likes Received:
    9
    Reputations:
    0
    а Password єто Cardinal?? тогда
    Code:
    ICQClient1.Password:=StrToInt(cope(
      memo1.lines[i],
      Pos(
            ';',
            memo1.lines[i])+1,
       Length(memo1.lines[i])))
    другой ошибки здесь не вижу...
    а так где ошибка:
    str:=memo1.lines;
    int:=Pos(';',str)+1;
    ICQClient1.Password:=cope(str,int,MaxInt);
     
  11. wolmer

    wolmer Member

    Joined:
    12 May 2009
    Messages:
    438
    Likes Received:
    97
    Reputations:
    9

    Да ну? А мне всегда казалось что значение UIN типа integer а не string