Entwickler-Ecke
Windows API - Passwort Charakter von Editfelder ändern?
jackie05 - So 31.08.08 18:10
Titel: Passwort Charakter von Editfelder ändern?
Hallo,
ich möchte gerne ein Editfeld, das ein Password Char enthält, gerne ändern.
Leider functioniert das nicht, wenn ich es über meinem Programm ändern möchte, wird der Inhalt des Editfeldes gelöscht.
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22:
| procedure SetPasswordChar(AHandle: HWND; Value: Char); var S: String; len: Integer; begin len := Sendmessage(AHandle, WM_GETTEXTLENGTH, 0, 0); SetLength(S, len); SendMessage(AHandle, WM_GETTEXT, len+1, lparam(@S[1])); SendMessage(AHandle, EM_SETPASSWORDCHAR, Ord(Value), 0); SendMessage(AHandle, WM_SETTEXT, 0, Integer(PChar(S))); end;
procedure TForm1.Button1Click(Sender: TObject); var wndWindow,wndEdit: HWND; begin wndWindow := FindWindow('IEFrame','TestSeite - Windows Internet Explorer'); wndEdit := FindWindowEx(wndWindow, 0, 'Edit', nil);
SetPasswordChar(wndEdit,'-'); end; |
Gibt es vieleicht eine andere möglichkeit, ein Editfeld "das ein Password Char enthält" zu ändern?
Ich wäre euch für jede hilfe sehr dankbar.
MfG
Blawen - So 31.08.08 21:07
Titel: Re: Passwort Charakter von Editfelder ändern?
Willst Du schlussendlich nur das verwendete Zeichen austauschen?
Wenn ja, schau Dir mal im Project Manager die Eigenschaft "PasswordChar" an.
jackie05 - So 31.08.08 21:24
Danke Dir.
Ich glaube Du hast mich falsch verstanden, ich möchte in einem externen anwendung das Editfeld was einen Password Char * enthält, auslesen und oder das Edidfeld den Password Char aufheben.
Wie könnte ich das ambesten realisieren?
MfG
Tilman - So 31.08.08 22:52
Früher ging das teilweise über GetText oder GetWindowText, weiß nicht mehr so genau wie der Befehl heißt. Darüber konnte man Editfelder auslesen, auch wenn ein PW-Char gesetzt war. Aber soweit ich weiß wurde dass gefixt, ist ja auch aus gutem Grund nicht vorgesehen ;)
jackie05 - So 31.08.08 23:56
Danke.
Ich habe ein Programm "WinID", mit dem man die Handles rausbekommt und da kann ja auch das Passwordfeld ausgegeben werden, also ist das ja auch möglich.
Naja, wenn jemand weiss, wie ich es lösen kann, dann wäre ich sehr dankbar dafür.
MfG
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!