1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
|
procedure TFCobraSAgent.EnvoyerFichierFTP;
//Se connecte au serveur et envoie le fichier de service de l'agent en cours
var
FichierLocal : string; //Nom du fichier en local Windows
FichierServeur : string; //Nom du fichier pour le serveur
Serveur : string; //Adresse serveur, ex : perso-ftp.wanadoo.fr
Login : string; //Nom utilisateur, ex : <a href="mailto:mr.martin@wanadoo.fr">mr.martin@wanadoo.fr</a>
MotPasse : string;
Port : string; //Le n° du port, FTP par défaut = 21
PConnexionInternet : HINTERNET;
PConnexionFTP : HINTERNET;
begin
//On récupère d'abord les paramètres du serveur (par un Reguitry
FCobraS.LireParamFTP(Serveur, Login, MotPasse, Port);
ShowMessage('Handle : ' + IntToStr(Self.Handle) + #13#10 +
'Adresse : ' + Serveur + #13#10 +
'Login : ' + Login + #13#10 +
'Mot de passe : ' + MotPasse + #13#10 +
'Port : ' + Port);
FichierLocal := 'C:\CobrasSecurite\MainCourante\CSmc.txt';
FichierServeur := 'CSmc.txt';
//Connexions : Internet, puis FTP
PConnexionInternet := InternetOpen(PChar('CobraSecurite'),
INTERNET_OPEN_TYPE_DIRECT, nil, nil, 0);
if PConnexionInternet = nil
then Exit;
PConnexionFTP := InternetConnect(PConnexionInternet, Pchar(Serveur), StrToInt(Port), Pchar(Login), Pchar(MotPasse), INTERNET_SERVICE_FTP, 0, 0 );
if PConnexionFTP = nil
then begin
InternetCloseHandle(PConnexionInternet);
Exit;
end;
//Envoi du fichier
Try
FtpPutFile(PConnexionFTP, PChar(FichierLocal), PChar(FichierServeur),
FTP_TRANSFER_TYPE_BINARY, 0);
Sleep(2000);
Finally
//On ferme la connexion
InternetCloseHandle(PConnexionInternet);
InternetCloseHandle(PConnexionFTP);
end;
ShowMessage('Transfert réussi !');
end; |
Partager