Delphi

本类阅读TOP10

·分布式网络考试系统原型分析及实现
·游戏外挂设计技术探讨①
·使用HOOK随心监视Windows
·Delphi 水晶报表打包解决
·试题库开发中非文本数据的处理
·如何将几个DBGRID里的内容导入同一个EXCEL表中....的问题
·如何使用Delphi设计强大的服务器程序
·工人线程中关闭窗体的实现
·用DLL方式封装MDI子窗体。
·支持XP下托盘栏气球提示的托盘单元

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
利用Dll实现通用密码验证框

作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站



      作者:夏青虫

---- 在我们编制Delphi应用程序,常常需要提供一个密码验证框,对应用程序的使用者进行身份核对。

如果能有一个通用的密码验证框,便能够为我们的工作节约不少的时间,更能使我们编制的程序小而快。



      



以下的程序为你提供了这样的一个DLL文件。 

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

    uses
      XcqCheck in 'XcqCheck.pas' {XcqForm};

    exports
      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中实现窗口让我走了不少弯路,我觉得此法对大家更有意义,这是避免程序

庞大的一种有效方法,不妨试试。 

---- 以上程序在Windows98/Delphi3下编译通过。欢迎大家批评指正。

 

 




相关文章

相关软件