熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Delphi編程 >> 正文

利用DLL實現通用密碼驗證框

2013-11-23 17:45:45  來源: Delphi編程 

  在我們編制Delphi應用程序常常需要提供一個密碼驗證框對應用程序的使用者進行身份核對如果能有一個通用的密碼驗證框便能夠為我們的工作節約不少的時間更能使我們編制的程序小而快以下的程序為你提供了這樣的一個DLL文件 

//文件名為CheckPasswordFormdpr; 編譯此文件生成CheckPasswordFormdll

    library CheckPasswordForm;

    uses
      XcqCheck in XcqCheckpas {XcqForm};

    exports
      CheckPassword name CheckPassword;//dll入口

    begin
    end 


    //文件名為XcqCheckpas
    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 TXcqFormOkBtnClick(Sender: TObject);
    begin
      if XcqEditText = xcq then
        Check := True;
      Close;
    end;

    function CheckPassword;export;
    begin
      Check := False;
      XcqForm := TXcqFormCreate(Application);

//創建密碼輸入框
      XcqFormShowModal;//顯示密碼輸入框; 

  注意不能用XcqFormShow!

Result := Check;//返回給調用本dll的應用程序判斷
XcqFormFree;//釋放本dll文件所占資源
    end;
    end

  在調用以上dll中CheckPassword函數的應用程序中只需加入以下語句在implementation 後function CheckPassword: Boolean; external CheckPasswordFormdll name CheckPassword;在需要進行密碼驗證的地方加入下面的條件語句就完全實現了密碼驗證的功能 
    if CheckPassword then 
    begin
      //如XcqQueryOpen;
    end;

  上面的程序只是一個簡單的密碼驗證框我們可以將密碼以寫入注冊表或文件的方式保存動態修改更可以利用算術算法對密碼進行簡單的加密等使要保密的數據更安全 

  其實上文中如何在dll中實現窗口讓我走了不少彎路我覺得此法對大家更有意義這是避免程序龐大的一種有效方法不妨試試


From:http://tw.wingwit.com/Article/program/Delphi/201311/25037.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.