Réponse acceptée !
Tu te lances sur un terrain dangereux...
A tous les coups, ta fenêtre est déjà en mémoire. En obtenant (très facilement) son handle, on l'affiche sans problème même si l'application n'a rien demandé.
Efface la ligne Application.CreateForm de Form2 dans le DPR et met là dans l'évènement du bouton qui doit normalement l'afficher.
procedure TForm1.Button1Click(...);
begin
if EditMotDePasse.Text='mdp' then
begin
Application.CreateForm(...);
Form2.ShowModal;
end;
end;Dans Form2.OnClose, tapes:
Form2.Release;Problème: n'affiche jamais en clair un mot de passe dans toncode comme je l'ai fait. Un mioche peut le retrouver illico presto. Gère un générateur de clé de type MD5 (voir un de mes codes en cliquant sur ma vache).
Le MD5 n'est pas réversible... une clé MD5 peut donc être
elle seulement en clair. Il suffit ensuite de faire un truc du genre:
if MD5(EditMotDePasse.Text)='la clé MD5 en héxadécimale' then
Problème: tu fais un IF ! Et faut jamais faire de IF, car il peut se faire dégommer par les pros de l'informatique. Donc, ton mot de passe... plouf !
Pour une utilisation banale, ça passe très bien, mais on dit toujours:
Une protection n'est jamais fiable à 100% et surtout pas en informatiqueJ'espère t'avoir aidé...

=============
Validez les réponses si ok...ViewVite : HTML