📄 unit5.pas
字号:
unit Unit5;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;
type
TForm5 = class(TForm)
Panel1: TPanel;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
oldpwd: TEdit;
newpwd: TEdit;
confirmpwd: TEdit;
btnok: TButton;
btncancel: TButton;
name: TEdit;
procedure btnokClick(Sender: TObject);
procedure btncancelClick(Sender: TObject);
private
{ Private declarations }
function checkOldPwd(Name:string):boolean; //判断旧密码存在与否
function checkNewPwd:boolean; //判断两次输入的新密码是否一致
public
{ Public declarations }
procedure changePwd(Name:string); //改变当前用户密码
end;
var
Form5: TForm5;
name:string;
implementation
{$R *.dfm}
{修改用户名为参数的用户密码}
procedure tform5.changePwd(Name:string);
var
f:file;
s1,ss2,s2,s3:string[30];
nr:integer;
begin
ss2:=newPwd.Text;
if checkOldPwd(Name) and checkNewPwd then//可以修改
begin
//打开配置文件定位到当前用户,修改密码
assignFile(f,'sys.ini');
reSet(f,1);
while not eof(f) do
begin
blockRead(f,s1,12,nr);
if s1=Name then
begin
blockWrite(f,ss2,12,nr);
closeFile(f);
exit;
end;
blockRead(f,s2,12,nr);
blockRead(f,s3,24,nr);
end;
closeFile(f);
end;
end;
{判断两次输入的新密码是否一致,一致返回true,不一致返回false}
function Tform5.checkNewPwd: boolean;
begin
if newPwd.Text=confirmPwd.Text then //两次输入的新密码一致
result:=true
else result:=false;
end;
{判断旧密码存在与否,存在返回true,不存在返回false}
function Tform5.checkOldPwd(Name:string): boolean;
var
f:file;
nr:integer;
s1,s2,s3:string[30];
begin
assignFile(f,'sys.ini'); //file变量与配置文件关联
reSet(f,1); //打开文件
repeat //读取每一条记录
blockRead(f,s1,12,nr);
blockRead(f,s2,12,nr);
blockRead(f,s3,24,nr);
if (nr>10) and (s2=oldPwd.Text) and (s1=Name) then
begin //发现当前用户的密码和输入的旧密码一致
closeFile(f);
result:=true;
exit;
end;
until (nr=0);
closeFile(f);
result:=false;
exit;
end;
procedure TForm5.btnokClick(Sender: TObject);
begin
changepwd(name.Text);
close;
end;
procedure TForm5.btncancelClick(Sender: TObject);
begin
name.text:='';
oldpwd.text:='';
newpwd.Text:='';
confirmpwd.text:='';
close;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -