欢迎来到天天文库
浏览记录
ID:38359994
大小:71.00 KB
页数:6页
时间:2019-06-11
《delphi dll封闭窗体登录封装到DLL的例子》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Delphi登录封装到DLL这是一个把登录封装到DLL的例子,当前程序还包括自动建立数据库,给数据库加密码。UNITfrm_pws;INTERFACEUSESWindows,SysUtils,Controls,Forms,DB,ADODB,Classes,StdCtrls;TYPETfrmpws=CLASS(TForm)Label1:TLabel;Edit1:TEdit;Label2:TLabel;Edit2:TEdit;Button1:TButton;Button2:TButton;ADOQuery1:TADOQuery;PROCEDUREButton
2、1Click(Sender:TObject);PROCEDUREButton2Click(Sender:TObject);PRIVATE{Privatedeclarations}PUBLIC{Publicdeclarations}END;VARfrmpws:Tfrmpws;logincount:integer;IMPLEMENTATION{$R*.dfm}PROCEDURETfrmpws.Button1Click(Sender:TObject);VARsql:STRING;BEGINsql:='select*frompws'+'whereuser="'+
3、edit1.Text+'"'+'andpwd="'+edit2.Text+'"';ADOQuery1.SQL.Text:=sql;ADOQuery1.Active:=true;inc(logincount);6IF(logincount>4)THENself.ModalResult:=mrcancelELSEBEGINIFNOTADOQuery1.IsEmptyTHENBEGINModalResult:=mrok;ADOQuery1.Active:=false;ENDELSEBEGINedit1.Text:='';edit2.text:='';END;E
4、ND;END;PROCEDURETfrmpws.Button2Click(Sender:TObject);BEGINModalResult:=mrcancel;END;END.LIBRARYpws;{ImportantnoteaboutDLLmemorymanagement:ShareMemmustbethefirstunitinyourlibrary'sUSESclauseANDyourproject's(selectProject-ViewSource)USESclauseifyourDLLexportsanyproceduresorfunction
5、sthatpassstringsasparametersorfunctionresults.ThisappliestoallstringspassedtoandfromyourDLL--eventhosethatarenestedinrecordsandclasses.ShareMemistheinterfaceunittotheBORLNDMM.DLLsharedmemorymanager,whichmustbedeployedalongwithyourDLL.ToavoidusingBORLNDMM.DLL,passstringinformation
6、usingPCharorShortStringparameters.}USESSysUtils,6Classes,Controls,frm_pwsIN'frm_pws.pas'{frmpws};VARmyCnn:STRING;{$R*.res}FUNCTIONcheckpwd:boolean;STDCALL;VARfrmpws:tfrmpws;BEGINIFmycnn=''THENBEGINresult:=false;exit;ENDELSEBEGINfrmpws:=tfrmpws.Create(NIL);TRYfrmpws.ADOQuery1.Conn
7、ectionString:=mycnn;result:=frmpws.ShowModal=mrok;FINALLYfrmpws.free;END;END;END;PROCEDUREsetCNN(cnn:STRING);STDCALL;BEGINmyCnn:=cnn;END;EXPORTSsetCNN,checkpwd;BEGINEND.programProject1;usesForms,Unit1in'Unit1.pas'{Form1};{$R*.res}begin6Application.Initialize;Application.CreateFor
8、m(TForm1,Form1);Application.Run;end.UNIT
此文档下载收益归作者所有