Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, IdBaseComponent, IdComponent, IdTCPConnection,
IdTCPClient, IdFTP;
type
TForm1 = class(TForm)
IdFTP1: TIdFTP;
Button1: TButton;
Memo1: TMemo;
Edit1: TEdit;
Button2: TButton;
Label1: TLabel;
Button3: TButton;
OpenDialog1: TOpenDialog;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure IdFTP1Status(ASender: TObject; const AStatus: TIdStatus;
const AStatusText: String);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses IdFTPList, IdFTPCommon;
{$R *.dfm}
{
本程序是一个ftp demo程序,我用windows信息服务在本机建立了一个ftp服务,
本机IP:192.168.10.99
用户名:cc
密码:1
}
procedure TForm1.Button1Click(Sender: TObject);
var
tr : Tstrings;
begin //连接
tr := TStringlist.Create;
IdFTP1.Host := '192.168.10.99'; //FTP服务器地址
IdFTP1.Username := 'user'; //FTP服务器用户名
IdFTP1.Password := 'user'; //FTP服务器密码
IdFTP1.Connect(); //连接到ftp
Edit1.Text := IdFTP1.RetrieveCurrentDir;//得到初始目录
IdFTP1.ChangeDir('client'); //进入到client子目录
//IdFTP1.ChangeDir('..'); //回到上一级目录
IdFTP1.List(tr); //得到client目录下所有文件列表
Memo1.Lines.Assign(tr);
tr.Free;
end;
procedure TForm1.Button2Click(Sender: TObject);
var
tt :TIdFTPListItems;
t : TIdFTPListItem;
i : integer;
tfname : String;
begin //下载
Label1.Caption := IdFTP1.DirectoryListing.Items[0].FileName;
IdFTP1.TransferType := ftBinary; //指定为二进制文件 或文本文件ftASCII
for i:=0 to IdFTP1.DirectoryListing.Count-1 do
begin
tt := IdFTP1.DirectoryListing; //得到当前目录下文件及目录列表
t := tt.Items; //得到一个文件相关信息
Label1.Caption :=t.Text; //取出一个文件信息内容
tfname := t.FileName;
showmessage(t.OwnerName+' '+t.GroupName+' '+t.FileName+' '+t.LinkedItemName);
if IdFTP1.DirectoryListing.Items.ItemType = ditFile then //如果是文件
begin
IdFTP1.Get(tfname,'d:\FTPtest\'+tfname,True,True); //下载到本地,并为覆盖,且支持断点续传
end;
end;
end;
procedure TForm1.Button3Click(Sender: TObject);
var
fi : string;
begin //上传
if OpenDialog1.Execute then
begin
fi := OpenDialog1.FileName;
IdFTP1.Put('f:\测试文档样本.rar','测试文档样本.rar');//上传,
end;
end;
procedure TForm1.IdFTP1Status(ASender: TObject; const AStatus: TIdStatus;
const AStatusText: String);
begin
{case AStatus of
hsResolving : showmessage('hsResolving');
hsConnecting: showmessage('hsConnecting');
hsConnected: showmessage('hsConnected');
hsDisconnecting: showmessage('hsDisconnecting');
hsDisconnected: showmessage('hsDisconnected');
hsStatusText: showmessage('hsStatusText');
ftpTransfer: showmessage('文件传送完毕。');
ftpReady: showmessage('准备传送文件....');
ftpAborted: showmessage('传送失败');
end; }
//showmessage(AStatusText);
end;
end.相关推荐
Delphi FTP文件传输程序【客户端】附源码.rar
新手写的Delphi FTP程序【客户端】附源码,FTP传输工具,作者:孔勇。文件传输精灵需要输入密码才可使用。本FTP程序在上传、下载文件的时候,适时显示速率,在特定场合,程序会对字符串进行加密传输,也可解密。 FTP部分,输入正确的IP地址、帐户名和密码后,即可快速连接远程FTP服务器,可进行文件传输与下载。
delphi上传文件到ftp服务器,求用Delphi实现的FTP服务器端程序
{$HDR$}{**********************************************************************}{UnitarchivedusingTeamCoherence}{TeamCoherenceisCopyright2002byQualitySo...
Delphi 连接FTP读取文件数据
Delphi FTP 读取文件的数据,有利于做接口使用
在delphi中用indy实现FTP上传 下载的例子
以前总认为FTP程序实现很困难,但后来在网上查看了相关的帖子后发现原来用delphi实现FTP上传与下载竟如此容易,确实对我鼓舞很大。 由于delphi本身自带了indy控件,因此用这些控件实现网络编程即快又容易。尽管如此,我还是极大地鼓励自己查看FTP底层是如何实现的,但就目前而言,indy控件还是一个非常不错的选择。 针对indy的强大,我还是决定将
Delphi客户端通过FTP服务器上传或下载文件或图片方法
本文档是Delphi类源码文档,Delphi客户端通过FTP服务器可以实现把本地图片上传到服务器,或把服务器上的图片下载到本地保存。
传送图片至FTP及显示FTP上图片
传送图片至FTP服务器上,显示FTP上图片代码
Delphi 实现FTP连接及上传下载
Delphi 实现FTP连接及上传下载 去发现同类优质开源项目:https://gitcode.com/ 此仓库提供了使用 Delphi 语言编写的 FTP 连接及上传下载功能的代码。该资源文件包含了实现 FTP 连接、上传文件和下载文件的方法,适用于需要在 Delphi 应用程序中集成 FTP 功能的开发者。 功能简介 FTP 连接:建立与 FTP 服务器的连接。 上传文件:将本地文件上传至 ...
delphi xe7 可用idFTP客户端demo源码
delphi xe7 可用idFTP客户端demo源码
Delphi实现FTP连接及上传下载:Delphi程序员的FTP解决方案
Delphi实现FTP连接及上传下载:Delphi程序员的FTP解决方案 去发现同类优质开源项目:https://gitcode.com/ Delphi实现FTP连接及上传下载,是专为Delphi开发者设计的FTP功能集成方案。在本文中,我们将详细介绍这个项目的核心功能、技术分析、应用场景及项目特点,帮助开发者更高效地实现FTP功能。 项目介绍 Delphi实现FTP连接及上传下载项目,提供了一组...
Delphi7实现FTP
代码原型让你分分钟搞定FTP文件传输,为工作和学习节省大量时间……
江科大51单片机笔记【1】单片机及开发板介绍
单片机,Micro Controller Unit,简称MCU,内部集成了CPU、RAM、ROM、定时器、中断系统、通讯接口等一系列电脑的常用硬件功能单片机的任务是信息采集(传感器)、处理(CPU)和硬件设备(电机、LED)的控制单片机算是一个袖珍版计算机,是一个完整的计算机系统,成本低体积小结构简单单片机的使用领域:智能仪表、实时工控、通讯设备、导航系统、家用电器等。
Delphi FTP程序 实现文件上传下载
Delphi FTP程序 实现文件上传下载 去发现同类优质开源项目:https://gitcode.com/ 简介 本仓库提供一款基于Delphi语言开发的FTP客户端程序,支持文件的快速上传与下载。该程序能够实时与服务器进行对比扫描,有效管理本地与服务器网站根路径下的文件。 功能特点 实现文件的上传与下载。 如果服务器路径(path)上存在文件(filename),则返回文件修改时间;否则返回...
AI影像组学在结直肠癌诊疗中的应用:从特征提取到临床决策
影像组学通过高通量计算从医学影像中提取定量特征,揭示肿瘤内部的微观生物学行为,这些特征反映了纹理异质性、形状不规则度等影像表型。其核心原理在于将图像数据转化为可分析的数字特征,结合机器学习算法进行模式识别,从而实现对疾病状态的精准预测。这一技术的价值在于能够无创、定量地评估肿瘤特性,为精准医疗提供关键支持。在临床实践中,AI驱动的影像组学模型广泛应用于结直肠癌的诊疗全链条,包括肿瘤良恶性鉴别、基因突变预测、治疗反应评估和预后分析等场景。通过整合影像组学特征与临床数据,可以构建预测模型,辅助医生进行更准确的诊
封装Ftp API函数,实现上传,下载文件,创建目录(Delphi)
//------------------------------------------------------------------------- // 文件名:WLFtp.pas // 描述:封装Ftp API函数,实现上传,下载文件,创建目录 // // 类名:TWLFtp // 作者:Win Lai // 创建日期:2004-1-9 // 修改日期:2004
ROS2 -Jazzy 一步一步(第一步_工作空间以及编译)
文件夹作用特点是否需要手动创建/维护src存放自己写的 ROS 2 包一个 workspace 可以有多个包需要手动创建build保存编译过程中的中间文件每个包生成对应子目录自动生成,可删除install保存编译完成后的功能包每个包有独立子目录,含可执行文件自动生成,可删除log保存编译日志用于查看错误原因、调试自动生成,不需修改colcon是 ROS 2 推荐使用的构建工具自动处理功能包的依赖和编译顺序一条命令就能编译整个工作空间。
Codex接入CCSwitch:本地代理与模型路由配置指南
在AI编程工具链中,本地代理与模型路由是连接智能体与模型服务的核心桥梁。Codex作为OpenAI推出的编程智能体,虽然具备强大的仓库理解和自主编码能力,但其默认模型链路固定,导致在多模型切换、内网统一管理及成本控制上存在天然瓶颈。CCSwitch正是为解决这一痛点而生的本地代理工具,它通过OpenAI兼容协议将Codex的请求透明转发至DeepSeek、通义千问等第三方模型服务,使模型切换如同点击按钮般简单。本文从本地代理和模型路由器的基础原理切入,系统讲解Codex与CCSwitch的安装配置、模型ID
如何用delphi实现ftp下载文件
//------------------------------------------------------------------------- // 文件名:WLFtp.pas // 描述:封装Ftp API函数,实现上传,下载文件,创建目录 // // 类名:TWLFtp // 作者:Win Lai // 创建日期:2004-1-9 // 修改日期:2004
【无标题】
可以看到这是一个带过滤的rce,并且还需要绕过空格,通过·查询资料得到了${IFS},$IFS$9,<,$IFS。然后f,l,a,g都被过滤了,可以用中括号[]来进行正则匹配,把GET传的参数改为?cmd=uniq /[e-h][k-n][^-b][e-h],就得到了flag。cmd={%0A"cmd":"/bin/cat /home/rceservice/flag"%0A}可以看到l被过滤了ls用不了了可以用dir用GET传参cmd=dir /,POST传参shell=system。
delphi实现FTP下载
unit WLFtp; interface uses Windows, Messages, Variants,SysUtils, Classes, Wininet, Dialogs; type TWLFtp = class(TObject) private FInetHandl...
PySWMM新手避坑指南:从安装到批量处理INP文件的完整流程(附常见错误解决方案)
本文为PySWMM新手提供从环境搭建到批量处理INP文件的完整避坑指南。详细讲解了虚拟环境配置、库安装方法,并针对“无法打开输入文件”和对象访问错误等高频问题提供解决方案。核心部分展示了如何利用Python脚本实现INP文件的批量运行、结果汇总以及参数自动化修改,显著提升SWMM模型的工作效率。
com.sap.aii.af.service.cpa.CPAObjectNotFoundException: Couldn‘t retrieve inbound binding
错误消息:错误截图:该错误通常表示在集成配置中,未找到与特定消息匹配的入站绑定(Inbound Binding)。具体而言,错误消息中的 P/S/A(Party/Service/Action)值未在配置中找到对应的入站绑定。
1202



被折叠的 条评论
为什么被折叠?



