• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

利用DLL实现通用密码验证框_Delphi

Delphi 搞代码 3年前 (2018-08-09) 122次浏览 已收录 0个评论

—- 在我们编制Delphi应用程序,常常需要提供一个密码验证框,对应用程序的使用者进行身份核对。如果能有一个通用的密码验证框,便能够为我们的工作节约不少的时间,更能使我们编制的程序小而快。以下的程序为你提供了这样的一个DLL文件。  

//文件名为CheckPasswordForm.dpr;
编译此文件生成CheckPasswordForm.dll
    library CheckPasswordForm;

    uses
      XcqCheck in ‘XcqCheck.pas’ {XcqForm};

    exports

http://www.gaodaima.com/?p=65905利用DLL实现通用密码验证框_Delphi

      CheckPassword name ‘CheckPassword’;//dll入口

    begin
    end.

    //文件名为XcqCheck.pas
    unit XcqCheck;

    interface

    uses
      Windows, Messages, SysUtils, Classes,
Graphics, Controls, Forms, Dialogs,
      StdCtrls, Mask, Menus;

    type
      TXcqForm = class(TForm)
      XcqEdit: TMaskEdit;//密码输入框
      OkBtn: TButton;
      procedure OkBtnClick(Sender: TObject);
    end;

    var
      XcqForm: TXcqForm;
      Check: Boolean;//验证输入密码的正确性
      function CheckPassword: Boolean;export;
//本dll文件的关键实现

    implementation

    {$R *.DFM}

    procedure TXcqForm.OkBtnClick(Sender: TObject);
    begin
      if XcqEdit.Text = ‘xcq’ then
        Check := True;
      Close;
    end;

    function CheckPassword;export;
    begin
      Check := False;
      XcqForm := TXcqForm.Create(Application);
//创建密码输入框
      XcqForm.ShowModal;//显示密码输入框;  
注意:不能用XcqForm.Show!
Result := Check;//返回给调用本dll的应用程序判断
XcqForm.Free;//释放本dll文件所占资源
    end;
    end.

—- 在调用以上dll中CheckPassword函数的应用程序中只需加入以下语句在implementation 后,function CheckPassword: Boolean; external ‘CheckPasswordForm.dll’ name ‘CheckPassword’;在需要进行密码验证的地方加入下面的条件语句就完全实现了密码验证的功能。  
    if CheckPassword then  
    begin
      …//如XcqQuery.Open;
    end;

—- 上面的程序只是一个简单的密码验证框,我们可以将密码以写入注册表或文件的方式保存,动态修改,更可以利用算术算法对密码进行简单的加密等,使要保密的数据更安全。  
—- 其实,上文中如何在dll中实现窗口让我走了不少弯路,我觉得此法对大家更有意义,这是避免程序庞大的一种有效方法,不妨试试。

欢迎大家阅读《利用DLL实现通用密码验证框_Delphi,跪求各位点评,若觉得好的话请收藏本文,by 搞代码


喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址