Как использовать свой диалог ввода пароля BDE

// .....
// .....
public
{ Public declarations }
procedure Password(Sender: TObject; var Continue: Boolean);
// ...
end;

var
FormMain: TFormMain;

implementation
{$R *.dfm}

procedure TFormMain.Password(Sender: TObject; var Continue: Boolean);
var
Passwd: String[15];
begin
Passwd := '';

FormPasswd := TFormPasswd.Create(Application);
// Creating dialog
try
if (FormPasswd.ShowModal = ID_OK) then begin
// If OK is pressed then get password from edit "edPassword"
Passwd := FormPasswd.edPasswd.Text
end
else begin
// If Cancel is pressed then terminate application
Application.ShowMainForm := False;
Application.Terminate;
Exit;
end;
finally
FormPasswd.Free;
// finally free password form
end;

Continue := (Passwd > '');
Session.AddPassword(Passwd);
// Add password typed to session
end;

procedure TFormMain.FormCreate(Sender: TObject);
begin
ClientDatabase.Session.RemoveAllPasswords;
// Remove all typed passwords from session, so user need type password again in app start
// Undocument next row in debug mode. This is for debugging and testing only, so we don't need typing password again and again ...
// ClientDatabase.Session.AddPassword('YOUR-PASSWORD');
ClientDatabase.Session.OnPassword := Password; // Set OnPassword Event
end;
 
« Предыдущая статья   Следующая статья »