明辉手游网中心:是一个免费提供流行视频软件教程、在线学习分享的学习平台!

显示密码的原理

[摘要]大家都用过用来显示密码的工具吧,嘿嘿。其实原理很简单.比如说在delphi中,Edit控件的PasswordChar属性可让框中的回显的字符为自己想要的字符。但是这些字符对于内部来说是不变的(虽说不够专业,但就是这么回事)!!而我们伟大的Delphi给了这个API---- int GetWindo...
大家都用过用来显示密码的工具吧,嘿嘿。其实原理很简单.比如说在delphi中,Edit控件的PasswordChar属性可让框中的回显的字符为自己想要的字符。但是这些字符对于内部来说是不变的(虽说不够专业,但就是这么回事)!!而我们伟大的Delphi给了这个API----
int GetWindowTextLength(HWND hWnd);得到名字的长度
int GetWindowText得到名字
  hWnd代表句柄大家都知道吧。还是不说废话。看下的程序;

在Form中放Label,Edit,Button各一。将Edit的PasswordChar属性改成自己想要的字符。加入Button代码:

  procedure TForm1.Button1.Click(sendor:TObject);  Var    Charname:Pchar;    CharLong:integer;  begin    Charlong:=GetwindowTextLength(Edit1.handle)+1;    Getmem(charname,charlong);    GetWindowText(Edit.handle,Charname,Charlong);    Label1.Caption:=String(Charname);    FreeMem(charname,0)  end;


在Delphi 5.0 for winme下通过。
当然,这只是原理,原理而已。你大可以再融合其它技术,写一个自己的密码查看器。