패스워드 프로그램이라는게 보통의 프로그램과 별반
다를 것이 없습니다.
그냥 프로그램이 시작될때 제일처음 시작되는 폼에다가
Edit 박스를 넣고 원하는 String이나 숫자가 나올때만
다음폼으로 분기하게 끔 만들어주면 되는 것이죠.
문제는 지정된 패스워드를 어떻게 보관하느냐입니다.
뭐...적당한 file을 하나 만드시던가 하셔서 저장해 두시면
되지않을까요? 예를 들어 Config.dbf라는 Database file을
갖고있고 그 파일의 한 필드가 PASSWORD라고 가정할때
첫번째 폼의 Button1.OnClick 이벤트에
다음처럼 하면 어떨까요?
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
if Edit1.Text = Table1.FieldBYName('PASSWORD').AsString then begin
Form2:=TForm2.Create(self);
Form2.ShowModal;
Form2.Free;
end else begin
showMessage('비밀번호가 틀립니다');
Table1.Close;
Close;
end;
Edit1.Text:='';
Edit1.SetFocus;
end;
위에 사용된 Edit컴포넌트의 PasswordChar속성은 패스워드가 곧이곧대로 보이지
않도록 "*"같은 걸로 지정해주시는게 좋겠습니다.
물론 위의 방법은 권해드릴만한 방법이 아닙니다. DataBase파일을 열줄 아는 사람
이라면 누구라도 패스워드를 알아낼 수 있으니까요.
그러나 제품의 Serial Number가 아니라 단지 프로그램 시작을 제한하기 위한
Password라면 별 상관이 없지 않을까요?
물론 소스속에 아예 패스워드를 넣어둔다면 가장 좋겠습니다. ^^
그럼 즐거운 코딩 하십시오.
|