{"rsdb":{"rid":"352549","subhead":"","postdate":"0","aid":"250185","fid":"86","uid":"1","topic":"1","content":"
\n

Delphi SuperDll<\/strong><\/p> \n

\u4f5c\u4e3a\u4e00\u540d5\u5e74\u7684Delpher\uff0c\u4e00\u76f4\u8ba4\u4e3aDelphi\u662f\u684c\u9762\u5e94\u7528\u7684\u738b\u8005\uff0c\u6211\u76f8\u4fe1\u5176\u4ed6\u7684Delpher\u4e5f\u8fd9\u4e48\u8ba4\u4e3a\u3002<\/p> \n

\u4f46\u662f\uff0c\u6162\u6162\u7684\u6211\u53d1\u73b0\u666e\u901a\u65b9\u5f0f\u7684Delphi\u5f00\u53d1\u4f1a\u9020\u6210\u4ee3\u7801\u7684\u4e25\u91cd\u81c3\u80bf\uff0c\u7279\u522b\u662fMDI\u7c7b\u5927\u578b\u9879\u76ee\u3001\u591a\u4eba\u540c\u65f6\u5f00\u53d1\u7684\u60c5\u51b5\u4e0b\u3002<\/p> \n

\u4e3e\u4e2a\u4f8b\u5b50\uff0c\u4e00\u4e2aDelphi\u5e38\u7528\u7684\u4e1a\u52a1\u903b\u8f91\uff0c\u6570\u636e\u5bfc\u51fa\u5230Excel\uff0c\u5b8c\u5168\u53ef\u4ee5\u5199\u6210\u4e00\u4e2a\u516c\u7528\u7684\u6a21\u5757\u653e\u7f6e\u5728\u4e1a\u52a1\u5355\u5143\uff0c\u5b50\u7a97\u4f53\u7528\u5230\u65f6\u76f4\u63a5\u8c03\u7528\u5373\u53ef\uff0c\u4f46\u662f\u4e00\u822c\u60c5\u51b5\u4e0b\uff0c\u4e8b\u60c5\u5e76\u4e0d\u6b62\u60f3\u8c61\u7684\u90a3\u4e48\u7b80\u5355\uff0c\u7ef4\u62a4\u4eba\u5458\u7684\u601d\u60f3\u771f\u7684\u4e00\u8a00\u96be\u5c3d\u3002<\/p> \n

\u540e\u6765\uff0c\u6211\u6709\u4e86\u5c06Delphi\u4e2d\u5e38\u7528\u7684\u4e1a\u52a1\u903b\u8f91\u529f\u80fd\u5c01\u88c5\u6210DLL\u7684\u60f3\u6cd5\uff0c\u6240\u6709\u7684\u4e1a\u52a1\u903b\u8f91\u53ea\u80fd\u5728DLL\u4e2d\u5b9e\u73b0\uff0c\u7cfb\u7edf\u4e2d\u4e0d\u5141\u8bb8\u76f4\u63a5\u5199\u4e1a\u52a1\u903b\u8f91\uff0c\u53ea\u80fd\u8c03\u7528DLL\u3002<\/p> \n

\u8fd9\u4e48\u505a\u7684\u597d\u5904\u662f\uff0c\u76f8\u540c\u7684\u4e1a\u52a1\u529f\u80fd\u4e0d\u4f1a\u88ab\u91cd\u590d\u5f00\u53d1\uff0c\u5927\u5927\u51cf\u5c11\u4e86\u4ee3\u7801\u7684\u81c3\u80bf\uff0c\u540c\u65f6\uff0c\u4e1a\u52a1\u903b\u8f91\u5f00\u53d1\u4eba\u5458\u548c\u524d\u53f0\u5f00\u53d1\u4eba\u5458\u72ec\u7acb\u5f00\u6765\uff0c\u63d0\u9ad8\u4e86\u5f00\u53d1\u6548\u7387\u3002<\/p> \n

\u8fd9\u91cc\u5c31\u662fSuperDLL\u7684\u7531\u6765\uff0c\u540e\u7eed\u5c06\u6301\u7eed\u66f4\u65b0\u3002<\/p> \n

\u8bf7\u770b\u5982\u4e0b\u4ee3\u7801\uff1a<\/p> \n

\u66f4\u65b0\u65e5\u5fd7\uff1a<\/p> \n

\/\/\u521d\u59cb\u5316<\/p> \n

\/\/\u90ae\u4ef6\u53d1\u9001<\/p> \n

\/\/FTP\u4e0a\u4f20\u3001\u4e0b\u8f7d<\/p> \n

\/\/cxGrid\u6570\u636e\u5bfc\u51fa<\/p> \n

\n
  1<\/span> library<\/span> SuperDll;\r\n<\/span>  2<\/span> \r\n  3<\/span> {<\/span> Important note about DLL memory management: ShareMem must be the\r\n<\/span>  4<\/span>   first unit in your library's USES clause AND your project's (select\r\n<\/span>  5<\/span>   Project-View Source) USES clause if your DLL exports any procedures or\r\n<\/span>  6<\/span>   functions that pass strings as parameters or function results. This\r\n<\/span>  7<\/span>   applies to all strings passed to and from your DLL--even those that\r\n<\/span>  8<\/span>   are nested in records and classes. ShareMem is the interface unit to\r\n<\/span>  9<\/span>   the BORLNDMM.DLL shared memory manager, which must be deployed along\r\n<\/span> 10<\/span>   with your DLL. To avoid using BORLNDMM.DLL, pass string information\r\n<\/span> 11<\/span>   using PChar or ShortString parameters. <\/span>}<\/span>\r\n 12<\/span> \r\n 13<\/span> uses<\/span>\r\n 14<\/span>   SysUtils, Classes, Variants, Graphics, Controls, IdBaseComponent, IdComponent, IdFTP,\r\n<\/span> 15<\/span>   IdFTPCommon, IdTCPConnection, IdTCPClient, IdMessage, IdMessageClient, IdSMTP, cxGrid,\r\n<\/span> 16<\/span>   cxGridExportLink, ComObj,\r\n<\/span> 17<\/span>   cxCustomData, cxGraphics,\r\n<\/span> 18<\/span>   cxData, cxDataStorage, cxEdit, cxDBData, cxGridLevel,\r\n<\/span> 19<\/span>   cxClasses, cxControls, cxGridCustomView, cxGridCustomTableView,\r\n<\/span> 20<\/span>   cxGridTableView, cxGridDBTableView;\r\n<\/span> 21<\/span> \r\n 22<\/span> {<\/span>$R *.res<\/span>}<\/span>\r\n 23<\/span> \r\n 24<\/span> function<\/span> SuperDll_Init: Boolean; stdcall<\/span>;\r\n<\/span> 25<\/span> begin<\/span>\r\n 26<\/span>   Result := True;\r\n<\/span> 27<\/span> end<\/span>;\r\n<\/span> 28<\/span> \r\n 29<\/span> function<\/span> SuperDll_Ftp_PutOrGet(vType: string<\/span>; var<\/span> vUserName: string<\/span>; var<\/span> vPassWord: string<\/span>; var<\/span> vHost: string<\/span>; var<\/span> vDir: string<\/span>; var<\/span> vDesFilePath: string<\/span>; vSouFilePath: string<\/span>): Boolean; stdcall<\/span>; \/\/<\/span>2: FTP\u6587\u4ef6\u4e0a\u4f20\u4e0b\u8f7d<\/span>\r\n 30<\/span> var<\/span>\r\n 31<\/span>   IdFtp: TIdFTP;\r\n<\/span> 32<\/span> begin<\/span>\r\n 33<\/span>   IdFtp := TIdFTP.Create<\/span>(nil<\/span>);\r\n<\/span> 34<\/span>   Result := False;\r\n<\/span> 35<\/span>   try<\/span>\r\n 36<\/span>     with<\/span> IdFtp do<\/span>\r\n 37<\/span>     begin<\/span>\r\n 38<\/span>       if<\/span> Connected then<\/span> Disconnect;\r\n<\/span> 39<\/span>       Username := vUserName;\r\n<\/span> 40<\/span>       Password := vPassWord;\r\n<\/span> 41<\/span>       Host := vHost;\r\n<\/span> 42<\/span>       Port := 21<\/span>;\r\n<\/span> 43<\/span>       Connect;\r\n<\/span> 44<\/span>       ChangeDir(vDir);\r\n<\/span> 45<\/span>       TransferType := ftBinary;\r\n<\/span> 46<\/span>       if<\/span> vType = '<\/span>Put<\/span>'<\/span> then<\/span>\r\n 47<\/span>       begin<\/span>\r\n 48<\/span>         Put(vSouFilePath, ExtractFileName(vSouFilePath));\r\n<\/span> 49<\/span>       end<\/span>\r\n 50<\/span>       else<\/span> if<\/span> vType = '<\/span>Get<\/span>'<\/span> then<\/span>\r\n 51<\/span>       begin<\/span>\r\n 52<\/span>         Get(ExtractFileName(vDesFilePath), vDesFilePath, True);\r\n<\/span> 53<\/span>       end<\/span>;\r\n<\/span> 54<\/span>     end<\/span>;\r\n<\/span> 55<\/span>   finally<\/span>\r\n 56<\/span>     IdFtp.Disconnect;\r\n<\/span> 57<\/span>     IdFtp.Free;\r\n<\/span> 58<\/span>     Result := True;\r\n<\/span> 59<\/span>   end<\/span>;\r\n<\/span> 60<\/span> end<\/span>;\r\n<\/span> 61<\/span> \r\n 62<\/span> function<\/span> SuperDll_EMail_Send(vSubject: string<\/span>; var<\/span> vFrom: string<\/span>; var<\/span> vRecipients: string<\/span>; var<\/span> vCCList: string<\/span>; var<\/span> vBccList: string<\/span>; var<\/span> vBody: string<\/span>; var<\/span> vAttachment: string<\/span>; var<\/span> vUsername: string<\/span>; var<\/span> vPassword: string<\/span>; var<\/span> vHost: string<\/span>): Boolean; stdcall<\/span>;\r\n<\/span> 63<\/span> var<\/span>\r\n 64<\/span>   IdSMTP: TIdSMTP;\r\n<\/span> 65<\/span>   IdMessage: TIdMessage;\r\n<\/span> 66<\/span> begin<\/span>\r\n 67<\/span>   Result := False;\r\n<\/span> 68<\/span>   IdSMTP := TIdSMTP.Create<\/span>(nil<\/span>);\r\n<\/span> 69<\/span>   IdMessage := TIdMessage.Create<\/span>(nil<\/span>);\r\n<\/span> 70<\/span>   try<\/span>\r\n 71<\/span>     with<\/span> IdMessage do<\/span>\r\n 72<\/span>     begin<\/span>\r\n 73<\/span>       Clear;\r\n<\/span> 74<\/span>       Subject := vSubject;\r\n<\/span> 75<\/span>       From.Text := vFrom;\r\n<\/span> 76<\/span>       Recipients.EMailAddresses := vRecipients;\r\n<\/span> 77<\/span>       CCList.EMailAddresses := vCCList;\r\n<\/span> 78<\/span>       BccList.EMailAddresses := vBccList;\r\n<\/span> 79<\/span>       Priority := TIdMessagePriority(4<\/span>);\r\n<\/span> 80<\/span>       if<\/span> Trim(vAttachment) <> ''<\/span> then<\/span>\r\n 81<\/span>       begin<\/span>\r\n 82<\/span>         TIdAttachment.Create<\/span>(MessageParts, Trim(vAttachment));\r\n<\/span> 83<\/span>       end<\/span>;\r\n<\/span> 84<\/span>       vBody := vBody + #13<\/span>#10<\/span>;\r\n<\/span> 85<\/span>       vBody := vBod","orderid":"0","title":"Delphi - \u521b\u5efaSuperDll \u6301\u7eed\u66f4\u65b0(\u4e00)","smalltitle":"","mid":"0","fname":"Delphi","special_id":"0","bak_id":"0","info":"0","hits":"356","pages":"2","comments":"0","posttime":"2019-09-06 00:26:20","list":"1567700780","username":"admin","author":"","copyfrom":"","copyfromurl":"","titlecolor":"","fonttype":"0","titleicon":"0","picurl":"https:\/\/www.cppentry.com\/upload_files\/","ispic":"0","yz":"1","yzer":"","yztime":"0","levels":"0","levelstime":"0","keywords":"Delphi<\/A> \u521b\u5efa<\/A> SuperDll<\/A> \u6301\u7eed<\/A> \u66f4\u65b0<\/A>","jumpurl":"","iframeurl":"","style":"","template":"a:3:{s:4:\"head\";s:0:\"\";s:4:\"foot\";s:0:\"\";s:8:\"bencandy\";s:0:\"\";}","target":"0","ip":"120.229.33.222","lastfid":"0","money":"0","buyuser":"","passwd":"","allowdown":"","allowview":"","editer":"","edittime":"0","begintime":"0","endtime":"0","description":"Delphi - \u521b\u5efaSuperDll \u6301\u7eed\u66f4\u65b0","lastview":"1713855308","digg_num":"0","digg_time":"0","forbidcomment":"0","ifvote":"0","heart":"","htmlname":"","city_id":"0"},"page":"1"}