delphi 下载?求Delphi 7.0 的下载地址
大家好,今天来为大家分享delphi 下载的一些知识点,和求Delphi 7.0 的下载地址的问题解析,大家要是都明白,那么可以忽略,如果不太清楚的话可以看看本篇文章,相信很大概率可以解决您的问题,接下来我们就一起来看看吧!
用Delphi实现文件下载的几种方法
笔者最近开发的系统中需要写一个下载文件的功能以前用BCB调用API写的很烦琐忽然想起有一个API就可以搞定了于是一大早就来搜索这个API就是UrlDownloadToFile不仅如此 Delphi的一些控件也可以轻松实现下载如NMHTTP指定NMHTTP InputFileMode:= ture;指定Body为本地文件名指定Get就可以下载了下面是详细代码均出自CSDN我把它们都整理到这儿让大家方便查阅
uses UrlMon; function DownloadFile(Source Dest: string): Boolean; begin try Result:= UrlDownloadToFile(nil PChar(source) PChar(Dest) nil)=; except Result:= False; end; end; if DownloadFile(// borland/delphi zip c:\kylix zip) then ShowMessage( Download succesful) else ShowMessage( Download unsuccesful)
例程
Uses URLMon ShellApi; function DownloadFile(SourceFile DestFile: string): Boolean; begin try Result:= UrlDownloadToFile(nil PChar(SourceFile) PChar(DestFile) nil)=; except Result:= False; end; end;
procedure TForm Button Click(Sender: TObject); const// URL Location SourceFile:=// google/intl/de/images/home_title gif;// Where to save the file DestFile:= c:\temp\google image gif; begin if DownloadFile(SourceFile DestFile) then begin ShowMessage( Download succesful!);// Show downloaded image in your browser ShellExecute(Application Handle PChar( open) PChar(DestFile) PChar() nil SW_NORMAL) end else ShowMessage( Error while downloading+ SourceFile) end;加入如下代码
NMHTTP InputFileMode:= ture; NMHTTP Body:=本地文件名; NMHTTP Header:= Head txt; NMHTTP OutputFileMode:= FALSE; NMHTTP ReportLevel:= Status_Basic; NMHTTP Proxy:=代理服务器的IP地址; NMHTTP ProxyPort:=代理服务器的端口号; With NMHTTP HeaderInfo do Begin Cookie:=; LocalMailAddress:=; LocalProgram:=; Referer:=; UserID:=用户名称; Password:=用户口令; End; NMHTTP Get(// abcdefg/sofare/a zip);
试试吧 Delphi的目录中有TNMHTTP控件的例子 NT+ Win+ IE+你可以用URL Moniker的功能
uses URLMon;
OleCheck(URLDownloadToFile(nil URL Filename nil));
其中最后一个参数你还可以传入一个IBindStatusCallback的实现以跟踪下载进度或控制中止下载简单的场合一句话就搞定了
B URL Moniker封装了大多数URL而不是像NMHTTP那样封装协议因此你可以用URLDownloadToFile下载HTTP FTP甚至本地文件和局域网文件还有其他的custom moniker比如MSITSTORE(MSDN Library的文档moniker实现)
lishixinzhi/Article/program/Delphi/201311/24713求Delphi 7.0 的下载地址
. Borland.Delphi 7.0 with.Update1.大企业集成安装版 [点击这里下载]
www.oamo.com/Software/Catalog130/1390.html
2. Delphi V7.0
Delphi是一个类似微软公司开发的 VB的一个 Windows
www.skycn.com/soft/2121.html
3. Delphi汉化版 7.0
Delphi的完整汉化版,对于喜爱Delphi编写程序的朋友来说是一大喜事!
download.pchome.net/development/delphi/755.html
4. Delphi V7.0汉化补丁
此为 Delphi 7.0汉化程序。汉化方法:汉化时
www.skycn.com/soft/2123.html
5. All AHM Triton Tools 2002 Borland Delphi V7.0
早在 Delphi3流行时,AHM控件集就已经声名远扬,现在
www.skycn.com/soft/12685.html
6.佐尔表达式控件 For DELPHI 7.0 V3.1.12
这是一个功能超强的表达式处理系统,提供16种常规运算
www.skycn.com/soft/24309.html
7. All AHM Triton Tools 2002 Borland Delphi V7.0
早在 Delphi3流行时,AHM控件集就已经声名远扬。现在,支持 Delphi4的新版AHM
download.21cn.com/list.php?id=32240
8. All AHM Triton Tools 2002 Borland Delphi V7.0
www.ddooo.com/softdown/13586.htm
9.佐尔表达式控件 DELPHI 7.0版 v3.1.13
www.ddooo.com/softdown/36163.htm
10. Borland.Delphi 7.0 with.Update1.大业龙卷风集成安装版
www.51ct.cn/downinfo/1521.html
11. Delphi V7.0汉化补丁
download.winzheng.com/SoftView/SoftView_2123.htm
12. Delphi V7.0
download.winzheng.com/SoftView/SoftView_2121.htm
13. All AHM Triton Tools 2002 Borland Delphi V7.0
download.winzheng.com/SoftView/SoftView_12684.htm
14.佐尔表达式控件 For DELPHI 7.0 V3.1.12
download.winzheng.com/SoftView/SoftView_24306.htm
15. Borland DELPHI 7.0中文正式企业版
www.chinahtml.com/software/07/2006/Borland-DELPHI-11371123651298.shtml
16. All AHM Triton Tools V2002 Borland Delphi 7.0
www.pcdog.com/soft/12375.htm
17. Delphi V7.0汉化补丁
www.pcdog.com/soft/14348.htm
18. Delphi V7.0
www.pcdog.com/soft/16801.htm
19.佐尔表达式控件 DELPHI 7.0版 3.1.12 3.1.12
www.shareware.cn/pub/14363.html
20. Delphi7.0企业版
www.ylmf.net/downinfo/89.html
21. Delphi V7.0
www.78soft.com/soft/355.htm
22. Delphi V7.0汉化补丁
www.78soft.com/soft/345.htm
23. All AHM Triton Tools 2002 Borland Delphi V7.0
www.78soft.com/soft/2511.htm
24. Delphi 7.0高级数据库教程
www.syku.net/down/soft/4597.htm
25. LMD Tools for Delphi2005 v7.02英文版
www.nbdown.net/ViewSoft-2847.aspx
26.突破Delphi 7.0编程实例五十讲
www.600it.com/soft/5568.htm
27. Borland Delphi 7.0 with Update1龙卷风企业版
down.htcnc.net/Software/Catalog47/912.html
28. Borland.Delphi 7.0 with.Update1.大企业集成安装版
www.sooweb.net/Soft/System-Utilities/Developer-Tools/141.html
29. Delphi 7.0汉化补丁
www.fixdown.com/soft/1103.htm
30. LMD Tools v7.02 For Delphi
www.fixdown.com/soft/14267.htm
31. delphi7(含中文包) 7.0
www.adu520.net/SoftView/SoftView_328.html
32. delphi 7.0
www.piaodown.com/down/soft/2834.htm
33. PDJCtrl v7.0 for Delphi
www.fixdown.com/soft/9933.htm
34. Delphi V7.0
www.fixdown.com/soft/8485.htm
35. Eagle CDK 7.01b.For.Delphi7
www.fixdown.com/soft/10887.htm
36. KrpRegions Library v1.7.0.271 For Delphi
www.fixdown.com/soft/11060.htm
37. Titan Database Interface for Microsoft Access v7.00S For.Delphi7
www.fixdown.com/soft/15351.htm
38. Titan Database Interface for Btrieve and Pervasive SQL v7.00i For.Delphi7
www.fixdown.com/soft/15341.htm
39. IntraWeb v7.0.15.for Delphi/BCB
www.fixdown.com/soft/10384.htm
40. Q-Systems ElasticForm v7.0.for.Delphi/BCB
www.fixdown.com/soft/18220.htm
41. Abakus VCL.v2.7.0.6.For.Delphi.7
www.fixdown.com/soft/18990.htm
42. ReportBuilder Server v7.03 for Delphi 6.7
www.fixdown.com/soft/12117.htm
43. ZipTV v7.06 for Delphi 7
www.fixdown.com/soft/9621.htm
44. Nevrona Rave Reports v7.0 BEX.For.Delphi.BCB
www.fixdown.com/soft/10822.htm
45. TeeChart Pro.v7.06.VCL.CLX.for.Delphi.BCB
www.fixdown.com/soft/18393.htm
46. Delphi7.0正式中文版ISO
www.lm8.cn/SoftView/SoftView_312.html
47. All AHM Triton Tools 2002 Borland Delphi 7.0
www.pay500.com/s3/39593.htm
48.佐尔表达式控件 for DELPHI 7.0 V3.1.13
功能超强的表达式处理系统,提供16种常规运算符,7种基本数据类型,支持数据类型自动
download.enet.com.cn/html/030212005101301.html
49. Delphi V7.0
soft.xaonline.com/SoftWareView.asp?SoftWareID=43990
delphi ftp下载文件问题
Delphi FTP例子源码
unit TransferThread;
////////////////////////////////////////////////////////////////////////////////
//模块说明: FTP传输核心模块类
//功能:指定一个下载(上传)的日期或文件名,系统执行传输功能(支持续传)
//备注:该模块属于传输类的一个子线程模块.
////////////////////////////////////////////////////////////////////////////////
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,ComCtrls,StdCtrls,IniFiles,IdIntercept, IdLogBase, IdLogEvent, IdAntiFreezeBase,
IdAntiFreeze, IdFTPList,IdBaseComponent,IdGlobal,IdComponent, IdTCPConnection, IdTCPClient,IdFTPCommon,
IdFTP;
type
TTransferThread= class(TObject)
private
{ Private declarations}
//进度显示
FProgressbar:TProgressbar;
//上传核心组件
FFTP:TIdFTP;
//上传列表内部类
FCombobox:TCombobox;
//上传信息显示
FLabel:TLabel;
//FTP地址
FFTP_STR_HOST:String;
//FTP用户名
FFTP_STR_USN:String;
//FTP用户密码
FFTP_STR_PWD:String;
//FTP端口
FFTP_STR_PORT:String;
//FTP上传标记
FFTP_STR_UTAG:String;
//FTP下载标记
FFTP_STR_DTAG:String;
//FTP指定的文件夹
FFTP_STR_FLODER:STring;
//传输文件大小
FFTP_LWD_BYTES:LongWord;
//传输开始时间
FFTP_DT_BEGINTIME:TDateTime;
//传输速度
FFTP_DUB_SPEED:Double;
//是否删除源文件.
FFTP_BOL_DEL:Boolean;
//是否正在传输文件
FFTP_BOL_ISTRANSFERRING:Boolean;
//类内部通用对话框函数
function MsgBox(Msg:string;iValue:integer):integer;
//获取用户当前的Windows临时文件夹
function GetWinTempPath:String;
//根据日期生成的日期文件名
function DateToFileName(DateTime:TDateTime):String;
//根据上传/下载标记生成完整的文件名
function GetFileFullName(sTag:String;DateTime:TDateTime):String;
protected
//传输核心函数
function TransferKernel(iTag:Integer;sFile:string;bDelSFile:boolean=False):boolean;
//传输组件的WorkBegin事件
procedure FFTPOnWorkBegin(Sender: TObject; AWorkMode: TWorkMode; const AWorkCountMax: Integer);
//传输组件的WorkEnd事件
procedure FFTPOnWorkEnd(Sender: TObject; AWorkMode: TWorkMode);
//传输组件的Work事件
procedure FFTPOnWork(Sender: TObject; AWorkMode: TWorkMode;const AWorkCount: Integer);
public
//构造函数
constructor Create;
//析构函数
destructor Destroy;
//进度条控件属性
property Progressbar:TProgressbar read FProgressbar write FProgressbar default nil;
//列表控件属性
property Combobox:TCombobox read FCombobox write FCombobox default nil;
//只读的FTP核心组件
property FTP:TidFTP read FFTP;
//标签控件
property oLabel:TLabel read FLabel write FLabel default nil;
//列表方法(该方法需要指定Combobox,否则无效)
procedure List;
//依据日期下载文件
procedure DownLoad(dDate:TDateTime);overload;
//依据文件名下载文件
procedure DownLoad(sFileName:String);overload;
//依据日期上传文件
procedure UpLoad(dDate:TDateTime);overload;
//依据文件名上传文件
procedure UpLoad(sFileName:String);overload;
// procedure Execute; override;
end;
implementation
constructor TTransferThread.Create;
var
FFini:TIniFile;
FFilePath:String;
begin
//完成FTP相关参数的读取.
FFTP_BOL_ISTRANSFERRING:=False;
Try
FFilePath:=ExtractFilePath(APPlication.exeName)+'setup.ini';
FFini:=TIniFile.Create(FFilePath);
FFTP_STR_HOST:=FFini.ReadString('文件传输','服务器地址','');
FFTP_STR_PORT:=FFini.ReadString('文件传输','服务器端口','');
FFTP_STR_USN:=FFini.ReadString('文件传输','用户名','');
FFTP_STR_PWD:=FFini.ReadString('文件传输','密码','');
FFTP_STR_FLODER:=FFini.ReadString('文件传输','文件夹','');
FFTP_STR_UTAG:=FFini.ReadString('文件传输','上传标识码','');
FFTP_STR_DTAG:=FFini.ReadString('文件传输','上传标识码','');
FFTP_BOL_DEL:=FFini.ReadBool('文件传输','删源文件',FALSE);
FFIni.Free;
Except
MsgBox('读取FTP连接配置信息失败!请检查您的Setup.ini文件.',MB_OK+MB_ICONERROR);
Exit;
Abort;
End;
//设置FTP相关参数
Try
FFTP:=TIdFTP.Create(nil);
FFTP.Host:=FFTP_STR_HOST;
FFTP.Port:=strtoint(FFTP_STR_PORT);
FFTP.UserName:=FFTP_STR_USN;
FFTP.Password:=FFTP_STR_PWD;
FFTP.TransferType:=ftASCII;
//事件驱动
FFTP.OnWork:=FFTPOnWork;
FFTP.OnWorkBegin:=FFTPOnWorkBegin;
FFTP.OnWorkEnd:=FFTPOnWorkEnd;
FFTP.Connect(True,-1);
Except
MsgBox('连接远程FTP服务器失败!'#10#13'1.服务器地址错误,或服务器不可用.'#10#13'2.用户名或密码不正确.'#10#13'3.FTP服务端口设置不正确.',MB_OK+MB_ICONERROR);
Exit;
Abort;
End;
end;
function TTransferThread.DateToFileName(DateTime: TDateTime): String;
var
Year, Month, Day:Word;
sYear,sMonth,sDay:String;
begin
DecodeDate(DateTime, Year, Month, Day);//日期
sYear:=inttostr(Year);
sMonth:=inttostr(Month);
sDay:=inttostr(Day);
//年
case Length(sYear) of
4: sYear:=sYear;
3: sYear:='0'+sYear;
2: sYear:='00'+sYear;
1: sYear:='000'+sYear;
else
sYear:='';
end;
//月
case Length(sMonth) of
2: sMonth:=sMonth;
1: sMonth:='0'+sMonth;
else
sMonth:='';
end;
//日
case Length(sDay) of
2: sDay:=sDay;
1: sDay:='0'+sDay;
else
sDay:='';
end;
if(sYear='') or(sMonth='') or(sDay='') then
begin
Result:='';
Exit;
end;
if(sYear<>'') and(sMonth<>'') and(sDay<>'') then
begin
Result:=sYear+sMOnth+sDay;
end;
end;
destructor TTransferThread.Destroy;
begin
FProgressbar:=nil;
FCombobox:=nil;
FLabel:=nil;
FFTP.Quit;
FFTP.Free;
end;
procedure TTransferThread.DownLoad(dDate: TDateTime);
begin
if Not FFTP_BOL_ISTRANSFERRING then
begin
TransferKernel(1,GetFileFullName(FFTP_STR_DTAG,dDate),FFTP_BOL_DEL);
end;
end;
procedure TTransferThread.DownLoad(sFileName: String);
begin
if Not FFTP_BOL_ISTRANSFERRING then
TransferKernel(1,sFileName,FFTP_BOL_DEL);
end;
procedure TTransferThread.FFTPOnWork(Sender: TObject; AWorkMode: TWorkMode;
const AWorkCount: Integer);
var
S,E: String;
H, M, Sec, MS: Word;
TotalTime: TDateTime;
DLTime: Double;
begin
TotalTime:= Now- FFTP_DT_BEGINTIME;//总用时
DecodeTime(TotalTime, H, M, Sec, MS);//取出时\分\秒\毫秒
Sec:= Sec+ M* 60+ H* 3600;//转换成秒
DLTime:= Sec+ MS/ 1000;//最终的下载时间
E:= Format('使用时间:%2d:%2d:%2d', [Sec div 3600,(Sec div 60) mod 60, Sec mod 60]);
if DLTime> 0 then
//每秒的平均速度:XX K/s
FFTP_DUB_SPEED:={(AverageSpeed+}(AWorkCount/ 1024)/ DLTime{)/ 2};
if FFTP_DUB_SPEED> 0 then
begin
Sec:= Trunc(((FFTP_LWD_BYTES- AWorkCount)/ 1024)/ FFTP_DUB_SPEED);
S:= Format('剩余时间:%2d:%2d:%2d', [Sec div 3600,(Sec div 60) mod 60, Sec mod 60]);
S:='速度:'+ FormatFloat('0.00 KB/秒',FFTP_DUB_SPEED)+ S+ E;
end
else
S:='';
if(FLabel<>nil) and(assigned(FLabel)) then
begin
FLabel.AutoSize:=True;
FLabel.Caption:=S;
FLabel.Update;
end;
if(FProgressBar<>nil) and(assigned(FProgressBar)) then
begin
FProgressBar.Position:=AWorkCount;//进度显示
FProgressBar.Update;
end;
end;
procedure TTransferThread.FFTPOnWorkBegin(Sender: TObject;
AWorkMode: TWorkMode; const AWorkCountMax: Integer);
begin
FFTP_BOL_ISTRANSFERRING:=True;
FFTP_DT_BEGINTIME:=Now;//开始时间
FFTP_DUB_SPEED:=0.0;//初始化速率
if(FProgressBar<>nil) and(assigned(FProgressBar)) then
begin
if AWorkCountMax>0 then
begin
FProgressBar.Max:=AWorkCountMax;
FFTP_LWD_BYTES:=FProgressBar.Max;
end
else
FProgressBar.Max:=FFTP_LWD_BYTES;
end;
end;
procedure TTransferThread.FFTPOnWorkEnd(Sender: TObject;
AWorkMode: TWorkMode);
begin
FFTP_BOL_ISTRANSFERRING:=False;
FFTP_DUB_SPEED:=0.00;
if(FLabel<>nil) and(assigned(FLabel)) then
begin
FLabel.AutoSize:=True;
FLabel.Caption:='';
FLabel.Update;
end;
if(FProgressBar<>nil) and(assigned(FProgressBar)) then
begin
FProgressBar.Position:=0;
end;
end;
function TTransferThread.GetFileFullName(sTag:String;DateTime:TDateTime):String;
begin
Result:=sTag+DateToFileName(DateTime)+'FD.HXD';
end;
function TTransferThread.GetWinTempPath: String;
var
TempDir:array [0..255] of char;
begin
GetTempPath(255,@TempDir);
Result:=strPas(TempDir);
end;
procedure TTransferThread.List;
var
Dir_List:TStringList;
FoundFolder:Boolean;
iCount:Integer;
begin
if(FCombobox=nil) or(Not Assigned(FCombobox)) then
begin
Exit;
Abort;
end;
Dir_List:=TStringList.Create;//创建字符串列表类
Try
if Not FFTP.Connected then FFTP.Connect;
FFTP.ChangeDir('/');//根目录//到服务器的根目录
FFTP.List(Dir_List,'',True);//获取目录列表
FoundFolder:=False;
FFTP.TransferType:=ftASCII;//更改传输类型(ASCII类型)
for iCount:=0 to Dir_List.Count-1 do
begin
if FFTP.DirectoryListing.Items[iCount].ItemType=ditDirectory then
begin
if Dir_List.IndexOf(FFTP_STR_FLODER)=-1 then//判断该文件夹不存在
begin
//如果不存继续循环查找.
Continue;
end
else
begin
//如果存在,则直接退出循环
FoundFolder:=True;
Break;
end;
end;
end;
if FoundFolder then//判断该文件夹不存在
begin
FFTP.MakeDir(FFTP_STR_FLODER);//不存在,则创建一个新的文件夹
end;
FFTP.ChangeDir(FFTP_STR_FLODER);
FFTP.List(Dir_List,'*.HXD',False);
if Dir_List.Count>0 then
begin
FCombobox.Items:=Dir_List;
end;
Finally
Dir_List.Free;
End;
end;
function TTransferThread.MsgBox(Msg: string; iValue: integer): integer;
begin
Result:=MessageBox(application.Handle,pChar(Msg),'系统信息',iValue+MB_APPLMODAL);
end;
function TTransferThread.TransferKernel(iTag: Integer; sFile: string;
bDelSFile: boolean): boolean;
var
sTmpPath:String;
Dir_List:TStringList;
FoundFolder:Boolean;
iCount:Integer;
begin
sTmpPath:=GetWinTempPath;//获取本地系统临时目录
Dir_List:=TStringList.Create;//创建字符串列表类
Try
if Not FFTP.Connected then FFTP.Connect;
FFTP.ChangeDir('/');//根目录//到服务器的根目录
FFTP.TransferType:=ftASCII;//更改传输类型(ASCII类型)
FFTP.List(Dir_List,'',True);//获取目录列表
FoundFolder:=False;
for iCount:=0 to Dir_List.Count-1 do
begin
if FFTP.DirectoryListing.Items[iCount].ItemType=ditDirectory then//是目录
begin
if Dir_List.IndexOf(FFTP_STR_FLODER)=-1 then//判断该文件夹不存在
begin
//如果不存继续循环查找.
Continue;
end
else
begin
//如果存在,则直接退出循环
FoundFolder:=True;
Break;
end;
end;
end;
if FoundFolder then//判断该文件夹不存在
begin
FFTP.MakeDir(FFTP_STR_FLODER);//不存在,则创建一个新的文件夹
end;
//更改传输类型
FFTP.TransferType:=ftBinary;
Try
//找到相应的目录,则更换路径.
FFTP.ChangeDir(FFTP_STR_FLODER);
//0为上传
if iTag=0 then
begin
Try
FFTP.Put(sTmpPath+sFile,sFile);
Except
MsgBox('上传文件失败!原因如下:'#13#10'1.服务器没有开启写文件的权限!'#10#13'2.程序发生异常,请重新上传!',MB_OK+MB_ICONERROR);
Abort;
End;
FFTP_LWD_BYTES:=FFTP.Size(sFile);
if bDelSFile then//删除本地源文件
begin
DeleteFile(sTmpPath+sFile);
end;
Result:=True;
FFTP.Disconnect;
end;
//1为下载
if iTag=1 then
begin
//文件已经存在
Try
FFTP_LWD_BYTES:=FFTP.Size(sFile);
if FileExists(sTmpPath+sFile) then
begin
case MsgBox('文件已经存在,要续传吗?'#13#10'是--续传'#10#13'否--覆盖'#13#10'取消--取消操作',MB_YESNOCANCEL+MB_ICONINFORMATION) of
IDYES: begin
FFTP_LWD_BYTES:=FFTP_LWD_BYTES-FileSizeByName(sTmpPath+sFile);
//参数说明:源文件,目标文件,是否覆盖,是否触发异常(True为不触发)。
FFTP.Get(sFile,sTmpPath+sFile,False,True);
end;
IDNO: begin
FFTP.Get(sFile,sTmpPath+sFile,True);
end;
IDCANCEL:
begin
FFTP_BOL_ISTRANSFERRING:=False;
end;
end;
end
else//文件不存在
begin
FFTP.Get(sFile,sTmpPath+sFile,True);
end;
Except
MsgBox('上传文件失败!原因如下:'#13#10'1.服务器没有开启写文件的权限!'#10#13'2.程序发生异常,请重新上传!',MB_OK+MB_ICONERROR);
Abort;
End;
if bDelSFile then//删除远程源文件
begin
FFTP.Delete(sFile);
end;
FFTP.Disconnect;
end;
Except
FFTP.Quit;
Result:=False;
End;
Finally
Dir_List.Free;
End;
end;
procedure TTransferThread.UpLoad(dDate: TDateTime);
begin
if Not FFTP_BOL_ISTRANSFERRING then
TransferKernel(0,GetFileFullName(FFTP_STR_DTAG,dDate),FFTP_BOL_DEL);
end;
procedure TTransferThread.UpLoad(sFileName: String);
begin
if Not FFTP_BOL_ISTRANSFERRING then
TransferKernel(0,sFileName,FFTP_BOL_DEL);
end;
end.
好了,文章到此结束,希望可以帮助到大家。