powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Навесить диалог пароля.
13 сообщений из 13, страница 1 из 1
Навесить диалог пароля.
    #32139767
SergeyS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Такая проблема:
Написал прогру, а теперь нужно навесить на нее фичу, что бы при запуске она запрашивала пароль. Как это сделать? Пробовал в FormCreate первой формы вставлять PasswordDlg, но как сделать выход из программы, если пароль оказался неправильным, а не продолжать выполнение FormCreate?
...
Рейтинг: 0 / 0
Навесить диалог пароля.
    #32139769
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Application.Terminate
...
Рейтинг: 0 / 0
Навесить диалог пароля.
    #32139773
SergeyS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не понял...
...
Рейтинг: 0 / 0
Навесить диалог пароля.
    #32139780
SergeyS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Теперь разобрался...
...
Рейтинг: 0 / 0
Навесить диалог пароля.
    #32139782
vladuha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я делал так:
Создавал форму TPassword, которая у меня была главной и которая проверяла правильность ввода пароля. Соответсвтенно, если пароль не правильный, то можно делать Password.Close и все закроется, а если пароль верен, то вызываешь TfrmMain.Show или TfrmMain.ShowModal, где frmMain это собственно само приложение.
...
Рейтинг: 0 / 0
Навесить диалог пароля.
    #32139784
SergeyS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да в том то и дело что у меня форма PasswordDlg не является главной.
...
Рейтинг: 0 / 0
Навесить диалог пароля.
    #32139858
Фотография Cooper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А у меня так:

Создается главная форма, ставлю у нее visible=false, на ее Create, вызываю форму - ввод пароля. Если пароль верен, то энту форму закрываю, а у главной ставлю визибл=тру, иначе можно закрыть все к чертовой матери или вывести главную форму, но на ней все пункты меню - енаблед=фальш, а у пункта - аутентификация - енаблед=тру.
...
Рейтинг: 0 / 0
Навесить диалог пароля.
    #32139862
DmitryV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет!

А что, если проверку желать внутри файла dpr?

Удачи
...
Рейтинг: 0 / 0
Навесить диалог пароля.
    #32139894
Speaker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в тексте проекта:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
begin
fmPassword := TfmPassword.Create( Application );
if (fmPassword.ShowModal<>mrOk) then Exit;

Application.CreateForm(TfmMain, fmMain);

Application.Run;
end;
...
Рейтинг: 0 / 0
Навесить диалог пароля.
    #32140350
vaasys
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
в основной форме, например TForm1

Код: plaintext
1.
2.
3.
4.
procedure TForm1.FormShow(Sender: TObject);
begin
TPasswd.ShowModal;  // форма ввода пароля
end;


в TPasswd
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
procedure TPasswd.Edit1KeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
if key = VK_RETURN then
        begin
        if Edit1.Text = 'твой пароль' then Close else Application.Terminate;
        end;
end;
...
Рейтинг: 0 / 0
Навесить диалог пароля.
    #32140408
StarWind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно очередной вариант? Пароль с формы я передаю в любом виде перед конектом (по событию). А дальше отлавливается Exception. Таким образом можно не сразу прогу закрыть, а скажем после третьего неправильного пароля. Бывает человек даже знает пароль и просто опечатывается, и сразу закрывать прогу, ИМХО, это грубовато
...
Рейтинг: 0 / 0
Навесить диалог пароля.
    #32140414
Фотография KirillovA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да что вы все паритесь то - можно после десятимиллиардной попытки сделать closehandle (application.handl)....
можно и через терминат процесс - в чем трабла то ... можно и отловить адресное пространство и под ентей кильнуть его ... вариантов - миллиард ... зачем такие извраты то...
...
Рейтинг: 0 / 0
Навесить диалог пароля.
    #32140518
Фотография SmaLL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я делал так
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
procedure TMainForm.FormActivate(Sender: TObject);
var
  continue: boolean;
begin
  continue:= True;
  // крутим цикл до тех пор, пока не введут правильное имя/пароль
  // или не нажмут отмену.
  while continue do
  begin
    if dlgLogin.ShowModal = mrOK then
      continue:= not ValidLogin(dlgLogin.Login.Text, dlgLogin.Password.Text)
    else
    begin
      continue:= False;
      Close;
    end;
  end;
end;
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Навесить диалог пароля.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]