Поле ввода пароля в Free Pascal

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by GordonFreemanII, 9 Dec 2015.

  1. GordonFreemanII

    GordonFreemanII New Member

    Joined:
    6 Nov 2015
    Messages:
    2
    Likes Received:
    0
    Reputations:
    0
    Здравствуйте.
    Я делаю так называемую Telnet-оболочку (то есть, программу-меню, которая открывается при входе на мой сервер через Telnet и умеет перезапускать службы, запускать редактирование нужного файла конфигурации и т.д.). Я хочу включить в эту программу функционал смены пароля активного пользователя. В принципе, с самой сменой пароля всё понятно:
    Code:
    exec('net','user '+GetEnv(username)+' '+MyVar);
    где MyVar - переменная типа String с только что введённым паролем.
    Замена введённых символов на звёздочки тоже не обязательна. Но мне нужно каким-то образом совместить ReadLn и ReadKey или настроить ReadKey таким образом, чтобы по нажатию на Esc можно было отменять ввод. Как это сделать?
     
  2. #colorblind

    #colorblind Moderator

    Joined:
    31 Jan 2014
    Messages:
    637
    Likes Received:
    246
    Reputations:
    42
    if Ord(Readkey)=27
    then exit;
     
    GordonFreemanII likes this.
  3. GordonFreemanII

    GordonFreemanII New Member

    Joined:
    6 Nov 2015
    Messages:
    2
    Likes Received:
    0
    Reputations:
    0
    colorblind, спасибо, но у меня же поле ввода текста. Как тогда, собственно, запрашивать ввод текста?
     
  4. #colorblind

    #colorblind Moderator

    Joined:
    31 Jan 2014
    Messages:
    637
    Likes Received:
    246
    Reputations:
    42
    К сожалению я не ничего не знаю о фрипаскале, кроме его синтаксиса. Как вариант, можно сделать проверку перед выполнением команды:
    PHP:
    if MyVar<>''
    then exec...
    else exit
    Но это немного не то, что ты хочешь.