Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как сделать форму для ввода пароля? [D5, WinXP]


lpp ©   (2002-07-31 11:43:00) 

Есть MDI форма, на ней ADOConnection для связи с базой в которой хранятся в том числе и Пользователи-пароли для доступа. Нужно проверять санкционарованность доступа в отдельной форме которая появляется до MDI.
Не могу сообразить как... Манипулировал со Splash-формой, но дело в том что пароли для доступа хранятся в базе.


Proton   (2002-07-31 21:21:00) [1]

я такое с интербейзом вытворял но думаю что это и вам поможет
схема такая
1)
компонент базы данных кладу на дата модуль
2)
при событии beforeconnect вывожу модально окно ввода пароля
по его закрытии (если юзверь нажал ok) подключаюсь к базе данных
3)
если подключение прошло успешно то создаю главную форму


вот куски кода

procedure TDM_db_engine.pFIBDatabase_staffLogin(Database: TFIBDatabase;
LoginParams: TStrings; var DoConnect: Boolean);
var Wnd_login: TWnd_login;
begin
Wnd_login := TWnd_login.Create(Application);
with Database,Wnd_login do
begin
if ShowModal <> mrOK then
//DoConnect := false;
TerminateProcess(GetCurrentProcess,0);
Application.ProcessMessages; // это что"б обновить заставку
DBName := DBPath;
DBParams.Values["user_name"] := UserName;
DBParams.Values["password"] := Password;
end;
Wnd_login.Free;
end;



begin
Application.Initialize;
WND_SplashScreen := TWND_SplashScreen.Create(Application);
WND_SplashScreen.Show;
WND_SplashScreen.Update;
Application.CreateForm(TDM_db_engine, DM_db_engine);
if DM_db_engine.pFIBDatabase_staff.Connected then
Application.CreateForm(TWnd_sk_main, Wnd_sk_main);
WND_SplashScreen.Hide;
WND_SplashScreen.Free;
Application.Run;
end.


Yuri Btr   (2002-07-31 13:27:00) [2]

File/New/Other.../Dialogs/Password Dialog
Очень удобная фишка. Запускаешь её после создания главной формы а затем уничтожаешь если аутентификация прошла


Наверх

Титульная страница Поиск, карта сайта Написать письмо