Ejemplo de conexión:
Código Delphi
[-]procedure TfrExpterminales.btConectarClick(Sender: TObject);
begin
try
IdFTP.Host :=HostTxt.Text;
IdFTP.Port :=StrToInt(PortTxt.Text);
IdFTP.UserName:=UserTxt.Text;
IdFTP.PassWord:=PassTxt.Text;
IdFTP.Connect;
pnEstado.Caption:='Servidor Conectado';
pnEstado.Font.Color:=ClGreen;
pnEstado.BevelOuter:=bvRaised;
btDesconectar.Enabled :=True;
btListar.Enabled :=True;
btEliminar.Enabled:=True;
btSubir.Enabled :=True;
btDescargar.Enabled :=True;
spActUno.Enabled :=True;
btConectar.Enabled :=False;
Try
IbDtsFicheros.Open;
Except
ShowMessage('Error Local al abrir la Tabla de información de Ficheros.');
end;
btListar.Click;
except
raise Exception.Create( 'No se ha podido conectar con el servidor ' + IdFTP.Host );
end;
end;
Ejemplo de enviar un fichero:
Código Delphi
[-]procedure TfrExpterminales.btSubirClick(Sender: TObject);
var
F: File of byte;
sArchivo:String;
begin
cSubirFichero:= cCaminoZipExp+'Dat010'+Vendedor+'.Zip';
AssignFile( F, cSubirFichero );
Reset( F );
CloseFile( F );
btListar.Click;
if btConectar.Enabled = False then
begin
pnMensajes.Color:=ClBlack;
try
IdFTP.Delete('Dat010'+Vendedor+'.Zip');
Except
end;
Try
IdFTP.Put( cSubirFichero, ExtractFileName( cSubirFichero ), False );
except
ShowMessage('Se produjo un error al subir el fichero.');
end;
pnMensajes.Caption:='';
pnMensajes.Color:=clBtnFace;
btListar.Click;
end
else
ShowMessage('Primero tiene que conectar con el servidor.');
end;
Te lo he pegado según lo tengo, es para que te hagas una idea, estoy utilizando las Indy.
Un Saludo.