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

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

Проверка пароля [D6, Win95/98, WinME, NT4, Win2k, WinXP]


Kac ©   (2002-12-16 10:44:00) 

Люди как проверить пароль а потом уже либо разрешать работать проге основной либо нет? В файле ДПР...
Спасибо


Kac   (2002-12-16 12:07:00) [1]

Сори народ - задача в данном исполнении в принципе не решаема без огромной головной боли. Вот как надо (а как реализовать :(( )

Текст ДПР

1 создаем форму Логина
2 считываем в OnCreate некоторые параметры + параметр Автологон
3 передаем параметры в основную форму (они там нужны)
4 если Автологон то жмем програмно на ОК иначе выводим форму Логина и ждем когда юзверь нажмет
5 нажата ОК -пытаемся войти, нет тогда Аппликатион.Клозе
6 если не Зарегистрировались то идем на 4

ЗЫ форм логина НЕ ДОЛЖНА БЫТЬ ОСНОВНОЙ

Тема закрыта...
Всем в любом случае спасибо!


Skier   (2002-12-16 11:46:00) [2]

>Kac

> Модал Резулт нормально а фот МРОК он не знает...
> ккое значение имеет МрОК?

- uses Controls;
- mrOk = idOk = 1; :)


Kac   (2002-12-16 11:34:00) [3]

это понятно...
а еще вариант...
Модал Резулт нормально а фот МРОК он не знает...
ккое значение имеет МрОК?


Skier   (2002-12-16 11:30:00) [4]

>Kac

Как вариант :

Напиши в модуле к формой TPassword
функцию (и вынеси её в интерфейсную) по проверке пароля и остальных параметров

что-то типа :

function CanConnect(...) : Boolean;

implementation

function CanConnect(...) : Boolean;
begin
//создаёшь форму TPassword
//проверяешь пароль и другие параметы
//возвращаешь True если всё правильно
//убиваешь форму...
end;

В проекте (в ДПРе) пишешь

ConnectFlag := CanConnect(...);


Reindeer Moss Eater   (2002-12-16 11:28:00) [5]

Вот так и установить
ConnectFlag:=TRUE;
:)


Kac   (2002-12-16 11:25:00) [6]

ВОПРОС!
Как со всем этим мы взлетим :).
Как после всех проверок устанавить описаную в ДПРе переменную ConnectFlag:=TRUE; ???


Kac   (2002-12-16 11:06:00) [7]

Народ привожу тексты :)
Это в основном модуле в ОнКреате
.........
IM.UIN:=ReadInteger("Log","LastActive",0);
Settings.AutoLog:=false;
if IM.UIN<>0 then begin
Settings.AutoLog:=ReadBool("U"+inttostr(IM.UIN),"LogAuto",false);
IM.Password:=ReadString("U"+inttostr(IM.UIN),"Log","");
end;//if
end;
INI.Free;

// Application.CreateForm(TfLogin, fLogin);

if Settings.AutoLog then fLogin.bOk.Click else fLogin.ShowModal;
Caption:=inttostr(IM.Uin);
//


Kac   (2002-12-16 11:02:00) [8]


with TfLogin.Create(nil) do
try
Application.Initialize;
ShowModal;
iF ModalResult<>mrOk then Abort; //не знает мрОК
Application.ShowMainForm:=false;
Application.Title := "


Skier   (2002-12-16 10:53:00) [9]

>Kac
И при вводе пароля обычно используют компонент
TEdit и его свойство TEdit.PasswordChar := "*"
(чтобы пароль не печатался на экране...)


Kac   (2002-12-16 10:52:00) [10]

Дело в том что там не только пароль но и еще куча всяких проверок - поэтому мне проще возвращять Модал резулт ...


Kac   (2002-12-16 10:49:00) [11]

Кажись это самое то!
МодалРезулт там проверить если можно!
Спасибо!


Reindeer Moss Eater   (2002-12-16 10:49:00) [12]

Введенные пароли (непосредственно сами, или некие функции от них) обычно сравниваются на равенство с чем-то. Используются при этом опреаторы "=" и "if then"


Song   (2002-12-16 10:47:00) [13]

Вот так например в dpr:

Begin
With TPasswordForm.Create(nil) Do
try
Application.Initialize;
ShowModal;
IF пароль_введён_неправильно then Abort;
Application.CreateForm(TForm1,Form1);
Application.Run;
finally
Free;
end;
End.

Что-то типа того..


Наверх

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