⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 changepasssrc.pas

📁 该程序可作为386的接警程序使用
💻 PAS
字号:
unit ChangePassSrc;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls,LogonSrc;

type
  TFormChangePass = class(TForm)
    GroupBox1: TGroupBox;
    Label1: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    ButtonCanceal: TButton;
    ComboBoxChangeUser: TComboBox;
    EditNewPass: TEdit;
    EditPassConfirm: TEdit;
    ButtonChange: TButton;
    GroupBox2: TGroupBox;
    Label2: TLabel;
    Label3: TLabel;
    Label6: TLabel;
    AddPass: TEdit;
    AddPassCon: TEdit;
    ButtonAdd: TButton;
    EditUserAdd: TEdit;
    GroupBox3: TGroupBox;
    Label7: TLabel;
    ComboBoxDelUser: TComboBox;
    ButtonDel: TButton;
    procedure ButtonCancealClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure ButtonDelClick(Sender: TObject);
    procedure ButtonChangeClick(Sender: TObject);
    procedure ButtonAddClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  FormChangePass: TFormChangePass;

implementation

{$R *.dfm}



 {
procedure TFormChangePass.ButtonOKClick(Sender: TObject);
var
        nTemp:Integer;
        fileid:textfile;
        strStore:String;
begin
        //1、判断用户名、和旧密码是否相同
        //不同提示 旧密码错误

        if EditUser.Text = 'Admin' then

        begin
                AssignFile(fileid, 'DB\A.DAT');
                Reset(fileid);
                Readln(fileid,strStore);
                CloseFile(fileid);

                if EditOldPass.Text <> strStore then
                begin
                        MessageBox(Application.Handle, '输入的旧密码不正确!', '联网报警中心-更改密码', MB_OK);
                        EditOldPass.Text := '';
                        EditNewPass.Text := '';
                        EditPassConfirm.Text := '';
                        Exit;
                end

        end
        else    //user = 'User'
        begin
                AssignFile(fileid, 'DB\U.DAT');
                Reset(fileid);
                Readln(fileid,strStore);
                CloseFile(fileid);

                if EditOldPass.Text <> strStore then
                begin
                        MessageBox(Application.Handle, '输入的旧密码不正确!', '联网报警中心-更改密码', MB_OK);
                        EditOldPass.Text := '';
                        EditNewPass.Text := '';
                        EditPassConfirm.Text := '';
                        Exit;
                end

        end;

        //0、判断新密码 和 确认相同,
        //不同 提示  密码确认不一致
        nTemp := strcomp(PChar(EditNewPass.Text), Pchar(EditPassConfirm.Text) );
        if  nTemp <> 0 then
        begin
                MessageBox(Application.Handle, '新密码和密码确认不一致', '联网报警中心-更改密码', MB_OK);
                Exit;
        end;


        //2、相同,更改。
        if EditUser.Text = 'Admin' then
        begin
                AssignFile(fileid, 'DB\A.DAT');
                ReWrite(fileid);
                Write(fileid, EditNewPass.Text);
                CloseFile(fileid);
        end
        else
        begin
                AssignFile(fileid, 'DB\U.DAT');
                ReWrite(fileid);
                Write(fileid, EditNewPass.Text);
                CloseFile(fileid);
        end;

        MessageBox(Application.Handle, '密码修改成功!', '联网报警中心-更改密码', MB_OK);
        Close;

end;
}
procedure TFormChangePass.ButtonCancealClick(Sender: TObject);
begin
        Close;
end;

procedure TFormChangePass.FormCreate(Sender: TObject);
begin
         while not LogonSrc.FormLogon.ADOQuery1.Eof do begin

                ComboBoxChangeUser.Items.Add(LogonSrc.FormLogon.ADOQuery1.FieldByName('name').AsString);
                ComboBoxDelUser.Items.Add(LogonSrc.FormLogon.ADOQuery1.FieldByName('name').AsString);

                LogonSrc.FormLogon.ADOQuery1.Next;

        end;

        ComboBoxChangeUser.ItemIndex := 0;
        ComboBoxDelUser.ItemIndex := 0;
end;

procedure TFormChangePass.ButtonDelClick(Sender: TObject);
var
        strSQL:string;
begin
        if ComboBoxDelUser.Text = '管理员' then
        begin
           MessageBox(Application.Handle, '不能删除管理员!', '错误', MB_OK);
           Exit;
        end;
        strSQL := 'select * from use where name =' + '"' + ComboBoxDelUser.Text + '"';
        FormLogon.ADOQuery1.Close;
        FormLogon.ADOQuery1.SQL.Clear;
        FormLogon.ADOQuery1.SQL.Text := strSQL;
        FormLogon.ADOQuery1.Open;

        FormLogon.ADOQuery1.Delete;

        MessageBox(Application.Handle, '删除用户成功!', '删除用户', MB_OK);

        ComboBoxChangeUser.Items.Clear;
        ComboBoxDelUser.Items.Clear;

         strSQL := 'select * from use';
         FormLogon.ADOQuery1.SQL.Text := strSQL;
         FormLogon.ADOQuery1.Open;
         FormLogon.ADOQuery1.First;

        
        while not FormLogon.ADOQuery1.Eof do begin

                ComboBoxChangeUser.Items.Add(FormLogon.ADOQuery1.FieldByName('name').AsString);
                ComboBoxDelUser.Items.Add(FormLogon.ADOQuery1.FieldByName('name').AsString);

                FormLogon.ADOQuery1.Next;

        end;

        ComboBoxChangeUser.ItemIndex := 0;
        ComboBoxDelUser.ItemIndex := 0;
        Close;
end;

procedure TFormChangePass.ButtonChangeClick(Sender: TObject);
var
        nTemp:Integer;
        strSQL:string;
begin
        nTemp := strcomp(PChar(EditNewPass.Text), Pchar(EditPassConfirm.Text) );
        if  nTemp <> 0 then
        begin
                MessageBox(Application.Handle, '新密码和密码确认不一致', '联网报警中心-更改密码', MB_OK);

        end
        else
        begin
                strSQL := 'Update use set pass = ' + '"' + EditNewPass.Text + '"'+ 'where name =' + '"' + ComboBoxChangeUser.Text +'"';
                FormLogon.ADOQuery1.Close;
                FormLogon.ADOQuery1.SQL.Clear;
                FormLogon.ADOQuery1.SQL.Text := strSQL;
                FormLogon.ADOQuery1.ExecSQL;
                MessageBox(Application.Handle, '更改用户密码成功!', '更改用户密码', MB_OK);

                strSQL := 'select * from use';
                FormLogon.ADOQuery1.SQL.Text := strSQL;
                FormLogon.ADOQuery1.Open;
                FormLogon.ADOQuery1.First;

                Close;

        end;
end;

procedure TFormChangePass.ButtonAddClick(Sender: TObject);
var
        strSQL:string;
        nTemp:integer;
begin
        nTemp := strcomp(PChar(AddPass.Text), Pchar(AddPassCon.Text) );
        if  nTemp <> 0 then
        begin
                MessageBox(Application.Handle, '新密码和密码确认不一致', '联网报警中心-更改密码', MB_OK);

        end
        else
        begin
                strSQL := 'select * from use where name =' +  '"'+ EditUserAdd.Text + '"';
                FormLogon.ADOQuery1.SQL.Text := strSQL;
                FormLogon.ADOQuery1.Open;

                if FormLogon.ADOQuery1.Eof then
              begin
                FormLogon.ADOQuery1.First;


                strSQL := 'Insert into use(name,pass) values(' +
                  '"' + EditUserAdd.Text + '"' + ',' + '"' + AddPass.Text + '"' + ')';
                FormLogon.ADOQuery1.Close;
                FormLogon.ADOQuery1.SQL.Clear;
                FormLogon.ADOQuery1.SQL.Text := strSQL;
                FormLogon.ADOQuery1.ExecSQL;

                strSQL := 'select * from use';
                FormLogon.ADOQuery1.SQL.Text := strSQL;
                FormLogon.ADOQuery1.Open;
                FormLogon.ADOQuery1.First;
                //(insert admin(id,name,pws) values(2,'test','test')
                MessageBox(Application.Handle, '添加用户成功!', '添加用户', MB_OK);

                ComboBoxChangeUser.Clear;
                ComboBoxDelUser.Clear;
                 while not LogonSrc.FormLogon.ADOQuery1.Eof do begin

                ComboBoxChangeUser.Items.Add(LogonSrc.FormLogon.ADOQuery1.FieldByName('name').AsString);
                ComboBoxDelUser.Items.Add(LogonSrc.FormLogon.ADOQuery1.FieldByName('name').AsString);

                LogonSrc.FormLogon.ADOQuery1.Next;

                end;
                ComboBoxChangeUser.ItemIndex := 0;
                ComboBoxDelUser.ItemIndex := 0;
                FormLogon.ADOQuery1.First;
                Close;
              end
              else
              begin
                   MessageBox(Application.Handle, '该用户已经存在!', '添加用户', MB_OK);
              end;
                
        end;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -