![]() |
InputBox und PasswordChar
Hi,
ich verwende folgenden Code, um mein Programm mit einem Passwort zu versehen:
Delphi-Quellcode:
Aus
begin
if InputBox('Passwort','Bitte das Passwort eingeben','') <> 'test' then begin Showmessage('Falsches Passwort!'); Application.Terminate; end; Application.Initialize; Application.CreateForm(TForm1, Form1); Application.Run; end. ![]()
Delphi-Quellcode:
Nur weiß ich jetzt leider nicht, wo im ersten Code-Schnippel ich jetzt den zweiten Code-Schnippel einsetzen muss.
wnd := FindWindow('TForm', 'Passwort');
wnd := FindWindowEx(wnd, 0, 'TEdit', nil); if wnd <> 0 then begin SendMessage(wnd, EM_SETPASSWORDCHAR, '*', 0); end; Wenn ich es vor der IF-Abfrage mache, gibt es ja noch keine Inputbox, und wenn ich es nach der IF-Abfrage einsetze, is es ja schon zu spät :roteyes: Könnt ihr mir da nen Tipp geben? Muss ich womöglich mitm abfragen, bis die Box da ist? Oder geht das garnicht, und ich muss nen komplett eigenen InputBox-Dialog malen? |
Re: InputBox und PasswordChar
Code:
Das wird wohl etwas schwerer, da du den Code ja aufrufen müstest, nachdem das Dialogfenster geladen wurde.
begin
[color=red][b]>>[/b][/color]if InputBox('Passwort','Bitte das Passwort eingeben','') <> 'test' then [color=red][b]<<<<<[/b][/color] begin Showmessage('Falsches Passwort!'); ... Aber sobald dieses Fenster sich öffnet, wird ja deine Prozedure, in welcher du es aufrufst, angehalten (an der markierten Stelle). Also davor geht nicht, weil dort noch kein Fenster da ist und danach auch nicht, denn da ist es ja wieder weg. Du könntest höchstens vorher einen eigenen (anderen/unabhängigen) Thread starten, wo abgefragt wird, ob das Fenster schon da ist und dann dein Code ausgeführt wird. |
Re: InputBox und PasswordChar
Hm,..
ok, hab mir das schon gedacht. Hab die Passwortabfrage jetzt anders implementiert. Trotzdem danke :) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:04 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz