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

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

Авторизация!! [D7, WinXP]


Che ©   (2002-12-13 01:11:00) 

Доброй ночи,
У меня вот такая проблема, хотед бы ограничить доступ к программе, необходимо, реализовать авторизацию при запуске программы, ну ..запрашивать логин/пароль для доступа к ней..
Скажите пожайлуста, как это можно реализовать...


Ihor Osov'yak   (2002-12-13 13:46:00) [1]

2 Che (13.12.02 03:18)

Несколько облегченно:


PasswordDlg:=TPasswordDlg.Create(Application);
PasswordDlg.ShowModal; // спрашиваем пароль, если пароль верный -
// оканчиваем с ModalResult=mrOk
if PasswordDlg.ModalResult=mrOk then begin
// пароль верен
PasswordDlg.Free; // диалог с паролем уже не нужен
Application.CreateForm(TMainForm, MainForm); // создаем главную форму
Application.Run;

end
else
// тут если пароль не верен. Убиваем диалог и ничего больше не делаем
PasswordDlg.Free;


Uran   (2002-12-13 13:40:00) [2]

А что именно ты не понял? где именно это описывается?
я сам до всего доходил методом тыка ...так что если можешь по асе мне написать может разберемся с этим примером! :) ICQ 167650639


Che   (2002-12-13 03:35:00) [3]

Ладно подойдём к вопросу иначе..
я тут исхитрился.. и кое чё придумал..только вот незадача..
как можно сделать форму активной?? Form1.Active доступно вроде только для чтения..


Che   (2002-12-13 03:18:00) [4]

Блин сложно всё как-то, ни чё не понял ..=)
я, как вы наверное заметили новичок..совсем..
но всё равно спасибо..


Ihor Osov'yak   (2002-12-13 02:42:00) [5]

Кусочек из dpr (немного больше чем две ):
(мораль здесь такова - главная форма это та, которая создается первой через Application.CreateForm, а в котором порядке их засвечивать - дело десятое)

begin
Application.Initialize;
Application.Title := "АРМ "Склад"";
DecimalSeparator := ".";
ShortDateFormat:= "dd.mm.yyyy";


SplashForm := TSplashForm.Create(Application);
SplashForm.Show;
SplashForm.Update;

DataModule1:=TDataModule1.Create(Application);
//
PasswordDlg:=TPasswordDlg.Create(Application);

SplashForm.Hide;
SplashForm.Free;

PasswordDlg.ShowModal;
if PasswordDlg.ModalResult=mrOk then begin
PasswordDlg.Free;
if idUser>0 then begin
if Check_User_Right(idUser,1)>uamForbidden then begin
InitUserRights;
SetTimeFromServer;
Application.CreateForm(TMainForm, MainForm);
Application.CreateForm(TFormViewQuRetListToMaker, FormViewQuRetListToMaker);
if not MainForm.quDepository.IsEmpty then begin
ApplyIBTime;
ShowMessage("Доброго дня, "+uData.UserName);
Application.Run;
end;

end
else begin
ShowMessage("Вибачте, "+uData.UserName+
", але на жаль у Вас в_дсутн_ повноваження для роботи з цим АРМ.");
end;
end
else ShowMessage("Помилкова комб_нац_я псевдон_м/пароль");;
end
else PasswordDlg.Free;
end.


Che   (2002-12-13 02:25:00) [6]

Т.е. мне нужно сделать форму с авторизацией - Form1
а прога сама Form2...так??

а как их можно заменить местами..ну код и компоненты из одной формы в другую перекинуть?


Rouse_   (2002-12-13 02:19:00) [7]

Ээээ нет, так не пойдет

Application.ShowMainForm:=False;
Это в DPR

Авторизационная форма - главная (т.е. Form1), Form1.Show; из второй формы есть бред.

Ну а дальше если не получится бум разбираться

Желаю успехов


Che   (2002-12-13 02:04:00) [8]


procedure TForm2.Button1Click(Sender: TObject);
begin
if (Edit1.Text="che") and (Edit2.Text="777") then
begin
Form1.Show;
Application.ShowMainForm:=False;
end
else
MessageDlg("Error", mtError, [mbOk], 0);

end;


вот ..это из формы с авторизацией..больше там ни чё не происходит


Rouse_   (2002-12-13 02:00:00) [9]

Проблема понята, давай код


Che   (2002-12-13 01:55:00) [10]

Всё равно main form остаётся...
Появляется Form2 точнее..Form1( у меня авторизация это Form2, а прога сама это Form1), а Form2-форма с авторизацией..всё равно остаётся..
во..


Rouse_   (2002-12-13 01:48:00) [11]

Application.ShowMainForm := False;

ЗЫ: Лучше привести код

Желаю успехов


Che   (2002-12-13 01:42:00) [12]

%)
а если серьёзно??Я было сделал две формы... в первой проверяет логин пароль, если всё хоккей, тогда show вторая..вся проблема в том..что я не могу закрыть без всяких ошибок первую форму и оставить работать вторую..короче глючит всё..
если у кого есть опыт, поделитесь plZZzzzzz


Rouse_   (2002-12-13 01:28:00) [13]

Рееестр, ини
Или скрытый ини
Что Вы хотели?
Не допустить в каморку?
Тяжелый случай,
Или
Анатолий
который Подгорецкий,
пишет:
Искать в подвале
Невозможно
Зеленый буттон
на зеленой форме
Кстати под любой системой :))

Что-то праздником навеяло...

Желал удачи Rouse_


Наверх

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