Вниз
Скачать: CL | DM;

форма по вводу пароля и создание основной   Найти похожие ветки 

← →
denis24   (2004-11-26 20:06) [0]

Помогите пожалуста!
Есть проэкт в котором при загрузке создается форма по проверке сер.номера в реестре.Если номер правильный то эта форма прячется и создается и основная форма.Если значение не соотв желаемому то форма показывается с предложением ввести сер .номер
Если номер совпадает то открыв осн.форма.Если нет прилож выгруж.

procedure TfrmCheck.FormCreate(Sender: TObject);
begin
try
Reg := TRegistry.Create;
Reg.RootKey := HKEY_LOCAL_MACHINE;
if Reg.OpenKey("......",false) then
begin
   check_app:= Reg.ReadString("MyApp");
        if check_app="00000000" THEN
        frmMain:=TfrmMain.Create (self);
end
else
frmCheck.Show;

finally
reg.Free;
end;
end;
В frmmain.formcreate прячу форму frmcheck
frmCheck.Hide;

Но в итоге у меня главная форма запускается и показывается а проверочнач frmcheck остается на єкране.
Где мне ее прятать?
В


← →
GanibalLector ©   (2004-11-26 22:51) [1]

Открой *.dpr своего проекта и что-то типа :

begin
 if InputBox("Password","Введите пароль","")<>"" then begin
 // тут твои действия...
 Application.Initialize;
 Application.CreateForm(TForm1, Form1);
 Application.Run;end;
end.


← →
GanibalLector ©   (2004-11-26 22:53) [2]

Что-бы при вводе ничего небыло видно правим  Dialogs.pas так :
...
       Width := MulDiv(164, DialogUnits.X, 4);
       MaxLength := 255;
       Text := Value;
       if  ACaption="Password" then PasswordChar:="*";
       SelectAll;
...
Результаты : просто,надежно,минимум кода,никаких лишних форм.


← →
denis24   (2004-11-27 16:15) [3]

А если я хочу обратится через tregistry к реестру и прочитать из него значения как без создания формы обойтись?


← →
GuAV ©   (2004-11-27 16:22) [4]

делай проверку в dpr


← →
begin...end ©   (2004-11-27 16:35) [5]


> [2] GanibalLector ©   (26.11.04 22:53)


> правим  Dialogs.pas


> Результаты : ...

...а также загомаченный Dialogs.pas.


← →
GanibalLector ©   (2004-11-27 22:57) [6]

2 denis24   (27.11.04 16:15) [3]

program Project1;

uses
 Forms, Registry,Dialogs,
 Unit1 in "Unit1.pas" {Form1};

{$R *.RES}
var Reg:TRegistry;st:string;
begin
Reg:=TRegistry.Create;
Reg.OpenKey("Software",true);
Reg.OpenKey("Zalizo",true);
st:= Reg.ReadString("password");
Reg.Free;
if InputBox("password","старый пароль :"+st,"")<>"" then begin

 Application.Initialize;
 Application.CreateForm(TForm1, Form1);
 Application.Run;      end;
end.


← →
GanibalLector ©   (2004-11-27 23:00) [7]

2 begin...end ©
...а также загомаченный Dialogs.pas.
Во-первых я изменил только ОДНУ строку генофонда!!!
Если уж и так не нравиЦа,то копируем Dialogs.pas в папку пректа...там правим...и сипользуем.Генофонд останется в целосности


← →
GuAV ©   (2004-11-28 00:59) [8]

GanibalLector ©   (27.11.04 23:00) [7]

Unit VasyaPupkinExtras was compiled with a different version of Dialogs.dcu


← →
denis24   (2004-11-28 12:30) [9]

Если я пишу
program Project2;
.
.
.
frmCheck:=TfrmCheck.Create (self);
То пишет
[Error] Project2.dpr(35): Undeclared identifier: "self"



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.027 c
14-1101106133
Ozone
2004-11-22 09:48
2004.12.12
Простой растровый редактор


9-1091793832
Денис
2004-08-06 16:03
2004.12.12
SNAKE


1-1101732768
Dmitry_04
2004-11-29 15:52
2004.12.12
Как проверить свою программу на баги?


3-1100096254
Andriy Tysh
2004-11-10 17:17
2004.12.12
Как вывести отчёт КвикРепортом из КлиентДатаСета только те записи


14-1101162069
vecna
2004-11-23 01:21
2004.12.12
Пелевин.




   Наверх